summaryrefslogtreecommitdiffstats
path: root/Doc/library
Commit message (Collapse)AuthorAgeFilesLines
* bpo-38738: Fix formatting of True and False. (GH-17083)Serhiy Storchaka2019-11-1238-166/+166
| | | | | | | | | * "Return true/false" is replaced with "Return ``True``/``False``" if the function actually returns a bool. * Fixed formatting of some True and False literals (now in monospace). * Replaced "True/False" with "true/false" if it can be not only bool. * Replaced some 1/0 with True/False if it corresponds the code. * "Returns <bool>" is replaced with "Return <bool>".
* bpo-38421: Update email.utils documentation (GH-16678)David K2019-11-121-2/+2
| | | | | | | | | | Updates documentation around email.utils.parsedate_tz(). Currently, the documentation specifies that when a string without a is timezone passed to parsedate_tz(), the last tuple is returned as ```None```. This is no longer true since Python 3.3 https://bugs.python.org/issue38421
* bpo-38385: Fix iterator/iterable terminology in statistics docs (GH-17111)Raymond Hettinger2019-11-121-9/+9
|
* bpo-38565: add new cache_parameters method for lru_cache (GH-16916)Manjusaka2019-11-121-0/+8
|
* bpo-38771: Explict test for None in code example (GH-17108)Jonathan Scholbach2019-11-121-1/+1
|
* bpo-38438: Simplify argparse "star nargs" usage. (GH-17106)Brandt Bucher2019-11-112-4/+4
|
* bpo-38382: Document the early-out behavior for a zero (GH-17037)Raymond Hettinger2019-11-071-1/+6
|
* closes bpo-38713: Expose P_PIDFD in os if it's defined. (GH-17071)Benjamin Peterson2019-11-061-1/+11
| | | https://bugs.python.org/issue38713
* bpo-38692: Add os.pidfd_open. (GH-17063)Benjamin Peterson2019-11-061-0/+13
|
* bpo-38696: Fix usage example of HTTPStatus (GH-17066)Ammar Askar2019-11-051-1/+1
|
* bpo-38388: Document pickle protocol version 5 (GH-16639)Dima Tisnek2019-11-031-1/+5
|
* Convert argument to snake_case (GH-16990)Борис Верховский2019-11-021-2/+2
|
* Slightly improve plistlib test coverage. (GH-17025)Jon Janzen2019-11-011-1/+1
| | | | | | | | | | | | * Add missing test class (mistake in GH-4455) * Increase coverage with 4 more test cases * Rename neg_uid to huge_uid in test_modified_uid_huge * Replace test_main() with unittest.main() * Update plistlib docs
* Update the URL for the requests package (GH-17006)Simon Legner2019-10-312-2/+2
| | | Change the url from docs.python-requests.org to requests.readthedocs.io
* bpo-38312: Add curses.{get,set}_escdelay and curses.{get,set}_tabsize. ↵Anthony Sottile2019-10-311-0/+26
| | | | (GH-16938)
* bpo-38600: NULL -> ``NULL``. (GH-17001)Serhiy Storchaka2019-10-304-9/+9
| | | Also fix some other formatting.
* bpo-38614: Add timeout constants to test.support (GH-16964)Victor Stinner2019-10-301-0/+61
| | | | | | | | Add timeout constants to test.support: * LOOPBACK_TIMEOUT * INTERNET_TIMEOUT * SHORT_TIMEOUT * LONG_TIMEOUT
* bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950)Serhiy Storchaka2019-10-301-1/+1
| | | | Replace all *NULL* with ``NULL``.
* bpo-37330: open() no longer accept 'U' in file mode (GH-16959)Victor Stinner2019-10-283-15/+11
| | | | | open(), io.open(), codecs.open() and fileinput.FileInput no longer accept "U" ("universal newline") in the file mode. This flag was deprecated since Python 3.3.
* bpo-38602: Add fcntl.F_OFD_XXXX for fcntlmodule (GH-16956)Dong-hee Na2019-10-281-0/+2
|
* bpo-38434: Fixes some audit event documentation (GH-16932)Steve Dower2019-10-262-8/+15
|
* bpo-30618: add readlink to pathlib.Path (GH-8285)Girts2019-10-231-0/+14
| | | | | | | | | | | This adds a "readlink" method to pathlib.Path objects that calls through to os.readlink. https://bugs.python.org/issue30618 Automerge-Triggered-By: @gpshead
* bpo-38466: Fix threading.excepthook doc (GH-16891)Daniel Baskal2019-10-221-2/+2
|
* bpo-38493: Add os.CLD_KILLED and os.CLD_STOPPED. (GH-16821)Dong-hee Na2019-10-211-0/+5
|
* bpo-38531: document extend action's added version (GH-16865)Batuhan Taşkaya2019-10-201-0/+2
|
* Remove doc reference to unmaitained Nose package (GH-16849)Jon Dufresne2019-10-191-2/+2
| | | The Nose package is no longer maintained.
* bpo-33604: Raise TypeError on missing hmac arg. (GH-16805)Gregory P. Smith2019-10-181-3/+5
| | | | | | | | | | Also updates the documentation to clarify the situation surrounding the digestmod parameter that is required despite its position in the argument list as of 3.8.0 as well as removing old python2 era references to "binary strings". We indavertently had this raise ValueError in 3.8.0 for the missing arg. This is not considered an API change as no reasonable code would be catching this missing argument error in order to handle it.
* bpo-37961, tracemalloc: add Traceback.total_nframe (GH-15545)Julien Danjou2019-10-151-0/+15
| | | | Add a total_nframe field to the traces collected by the tracemalloc module. This field indicates the original number of frames before it was truncated.
* bpo-32498: urllib.parse.unquote also accepts bytes (GH-7768)Stein Karlsen2019-10-141-1/+6
|
* bpo-38464: Document parameter for NormalDist.quantiles() (GH-16757)Raymond Hettinger2019-10-141-1/+1
|
* bpo-38467: Fix argument name of typing functions (GH-16753)Sebastian Rittau2019-10-131-2/+2
|
* bpo-28556: Remove another mention of metaclass of Generic in typing docs ↵Ivan Levkivskyi2019-10-131-2/+2
| | | | | | | | (GH-16743) Metaclass was removed in Python 3.7 (there is already a `versionchanged` item about this). https://bugs.python.org/issue28556
* bpo-38378: Rename parameters "out" and "in" of os.sendfile(). (GH-16742)Serhiy Storchaka2019-10-131-9/+12
| | | | | | | They conflicted with keyword "in". Also rename positional-only parameters of private os._fcopyfile() for consistency.
* bpo-38417: Add umask support to subprocess (GH-16726)Gregory P. Smith2019-10-121-3/+9
| | | | On POSIX systems, allow the umask to be set in the child process before we exec.
* bpo-35800: Deprecate smtpd.MailmanProxy (GH-11675)Samuel Colvin2019-10-121-0/+6
| | | | | | Since `smtpd.MailmanProxy` is already broken, it is not formally deprecated in 3.9. It will be removed in 3.10. https://bugs.python.org/issue35800
* docs: Add asyncio source code links (GH-16640)Kyle Stanley2019-10-1011-4/+54
|
* bpo-32996: Documentation fix-up. (GH-16646)M. Eric Irrgang2019-10-101-3/+4
| | | | | | | PR #4906 changed the typing.Generic class hierarchy, leaving an outdated comment in the library reference. User-defined Generic ABCs now must get a abc.ABCMeta metaclass from something other than typing.Generic inheritance.
* bpo-38294: Add list of no-longer-escaped chars to re.escape documentation. ↵Ricardo Bánffy2019-10-071-3/+5
| | | | | | | | | (GH-16442) Prior to 3.7, re.escape escaped many characters that don't have special meaning in Python, but that use to require escaping in other tools and languages. This commit aims to make it clear which characters were, but are no longer escaped.
* bpo-26510: Add versionchanged for required arg of add_subparsers (GH-16588)Adam J. Stewart2019-10-071-1/+4
| | | | | | | | | | The `required` argument to `argparse.add_subparsers` was added in #3027. This PR specifies the earliest version of Python where it is available. https://bugs.python.org/issue26510 Automerge-Triggered-By: @merwok
* bpo-38235: Correct some arguments names in logging documentation (GH-16571)Ashley Whetter2019-10-041-17/+17
|
* bpo-32689: Updates shutil.move to allow for Path objects to be used as ↵Maxwell A McKinnon2019-10-011-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | source arg (GH-15326) Important work originally done by @emilyemorehouse two years ago and nearly ready to go in. This bug has affected many people and in some cases has been a dealbreaker to the adoption of the otherwise wonderful pathlib and PEP519. https://stackoverflow.com/questions/33625931/copy-file-with-pathlib-in-python. This adds the outstanding test request from that PR @vstinner (https://github.com/python/cpython/pull/5393). Test fails without the change, passes with it, along with every other test in test_shutil. Some variants were experimented with to make the one line change and the most performant one was picked. # Added Test for PathLike directory destination, the current fail case ``` Lib/test/test_shutil.py::TestMove::test_move_file_pathlike FAILED [100%] ============================================================== FAILURES =============================================================== __________________________________________________ TestMove.test_move_file_pathlike ___________________________________________________ self = <test.test_shutil.TestMove testMethod=test_move_file_pathlike> def test_move_file_pathlike(self): # Move a file to another location on the same filesystem. src = pathlib.Path(self.src_file) > self._check_move_file(src, self.dst_dir, self.dst_file) Lib/test/test_shutil.py:1563: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Lib/test/test_shutil.py:1545: in _check_move_file shutil.move(src, dst) /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/shutil.py:562: in move real_dst = os.path.join(dst, _basename(src)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ path = PosixPath('/var/folders/r2/psq74t5x3nbfzlph8bh2pvdw0000gn/T/tmp9ie0wh9_/foo') def _basename(path): # A basename() variant which first strips the trailing slash, if present. # Thus we always get the last component of the path, even for directories. sep = os.path.sep + (os.path.altsep or '') > return os.path.basename(path.rstrip(sep)) E AttributeError: 'PosixPath' object has no attribute 'rstrip' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/shutil.py:526: AttributeError ============================================== 1 failed, 102 deselected in 0.30 seconds =============================================== ``` After change: ``` ========================================================= test session starts ========================================================= platform darwin -- Python 3.7.4, pytest-5.0.1, py-1.8.0, pluggy-0.12.0 -- /Users/maxwellmckinnon/.venvs/TA3.7/bin/python3.7 cachedir: .pytest_cache rootdir: /Users/maxwellmckinnon/dev/cpython plugins: cov-2.7.1, mock-1.10.4 collected 103 items / 102 deselected / 1 selected Lib/test/test_shutil.py::TestMove::test_move_file_pathlike PASSED [100%] ============================================== 1 passed, 102 deselected in 0.06 seconds =============================================== ``` Running all the tests in test_shutil.py ``` ╰─ pytest Lib/test/test_shutil.py -v ========================================================= test session starts ========================================================= platform darwin -- Python 3.7.4, pytest-5.0.1, py-1.8.0, pluggy-0.12.0 -- /Users/maxwellmckinnon/.venvs/TA3.7/bin/python3.7 cachedir: .pytest_cache rootdir: /Users/maxwellmckinnon/dev/cpython plugins: cov-2.7.1, mock-1.10.4 collected 103 items Lib/test/test_shutil.py::TestShutil::test_chown PASSED [ 0%] Lib/test/test_shutil.py::TestShutil::test_copy PASSED [ 1%] ... Lib/test/test_shutil.py::TermsizeTests::test_stty_match SKIPPED [ 99%] Lib/test/test_shutil.py::PublicAPITests::test_module_all_attribute PASSED [100%] ================================================ 96 passed, 7 skipped in 1.25 seconds ================================================= ``` # Performance Considerations Is it considered poor form to get rid of _basename altogether and make use of pathlib in the move function? I'm not sure if the idea is for all these modules to strictly avoid circular dependencies. They are already using os.path which is just as much a citizen in 3.8 as pathlib right? e.g. `real_dst = os.path.join(dst, _basename(src))` becomes `real_dst = Path(dst) / Path(src).name` I've looked around and familiarized myself, and I now think importing pathlib here is fine. My only remaining concern is that of performance. Here's the performance difference for this step. ``` In [46]: %timeit real_dst = os.path.join("a/b/c", _basename('b/')) 2.71 µs ± 62.6 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each) In [47]: %timeit real_dst = Path("a/b/c") / Path('b/').name 12.4 µs ± 65.3 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each) ``` Is 10us significant or insignificant compared to the least expensive operation this function will do? I don't know. Let's find out. ``` In [55]: %timeit os.rename('/tmp/a/a.txt', '/tmp/a/b.txt'); os.rename('/tmp/a/b.txt', '/tmp/a/a.txt') 124 µs ± 2.18 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each) ``` 62us to rename. 10us seems significant enough that we wouldn't want to favor the Path sugar suggestion. 16% speed decrease from adding the 10us. What do people think? I was hoping to get to use pathlib.Path here, but I suspect for this low level move, it should be as fast as possible, and 16% is not worth one line of sugary code to me. https://bugs.python.org/issue32689 Automerge-Triggered-By: @gvanrossum
* Fix and improve `asyncio.run()` docs (GH-16403)Kyle Stanley2019-10-011-4/+2
|
* bpo-38242: Revert "bpo-36889: Merge asyncio streams (GH-13251)" (#16482)Yury Selivanov2019-09-304-532/+74
| | | See https://bugs.python.org/issue38242 for more details
* bpo-38163: Child mocks detect their type as sync or async (GH-16471)Lisa Roach2019-09-301-1/+27
|
* bpo-37408: Precise that Tarfile "format" argument only concerns writing. ↵Pascal Chambon2019-09-281-2/+3
| | | | (GH-14389)
* bpo-38244: [Documentation] Fix unreliable link to sever in ftplib.rst (#16319)Prateek Nayak2019-09-261-1/+1
|
* Doc: Use the `with` statement in the first example of the ftplib doc. (GH-16271)Stéphane Wirtel2019-09-261-1/+2
|
* bpo-38112: Compileall improvements (GH-16012)Lumír 'Frenzy' Balhar2019-09-261-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Raise the limit of maximum path depth to actual recursion limit * Add posibilities to adjust a path compiled in .pyc file. Now, you can: - Strip a part of path from a beggining of path into compiled file example "-s /test /test/build/real/test.py" → "build/real/test.py" - Append some new path to a beggining of path into compiled file example "-p /boo real/test.py" → "/boo/real/test.py" You can also use both options in the same time. In that case, striping is done before appending. * Add a possibility to specify multiple optimization levels Each optimization level then leads to separated compiled file. Use `action='append'` instead of `nargs='+'` for the -o option. Instead of `-o 0 1 2`, specify `-o 0 -o 1 -o 2`. It's more to type, but much more explicit. * Add a symlinks limitation feature This feature allows us to limit byte-compilation of symbolic links if they are pointing outside specified dir (build root for example).
* bpo-38255: super() can search attributes as well as methods (GH-16368)Raymond Hettinger2019-09-251-0/+4
| | | Improvement suggested by Géry Ogam.
* bpo-38260: Add Docs on asyncio.run (GH-16337)Emmanuel Arias2019-09-251-0/+12
| | | | | | | | | | | | | Add docs about return and raise exception on asyncio.run https://bugs.python.org/issue38260 Automerge-Triggered-By: @asvetlov