summaryrefslogtreecommitdiffstats
path: root/Doc/using
Commit message (Collapse)AuthorAgeFilesLines
* [3.12] gh-106909: Use role :const: for referencing module constants ↵Serhiy Storchaka2023-07-211-2/+2
| | | | | (GH-106910) (GH-106956) (cherry picked from commit 4b9948617f91175783609769aa6160e5b49b9ccc)
* [3.12] gh-106919: Use role :c:macro: for referencing the C "constants" ↵Serhiy Storchaka2023-07-211-4/+4
| | | | | (GH-106920) (GH-106951) (cherry picked from commit fcc816dbff7ca66c26f57a506e4d2330fe41d0ff)
* [3.12] gh-106232: Make timeit doc command lines compatible with Windows. ↵Miss Islington (bot)2023-07-011-1/+1
| | | | | | | | | | | | (GH-106296) (#106298) gh-106232: Make timeit doc command lines compatible with Windows. (GH-106296) Command Prompt (CMD Shell) and older versions of PowerShell require double quotes and single quotes inside the string. This form also works on linux and macOS. (cherry picked from commit 04dfc6fa9018e92a5b51c29fc0ff45419c596bc3) Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
* gh-101282: Apply BOLT optimizations to libpython for shared builds (#104709)Gregory Szorc2023-05-221-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Apply BOLT optimizations to libpython for shared builds. Most of the C code is in libpython so it is critical to apply BOLT there fully realize BOLT benefits. This change also reworks how BOLT instrumentation is applied. It effectively removes the readelf based logic added in gh-101525 and replaces it with a mechanism that saves a copy of the pre-bolt binary and restores that copy when necessary. This allows us to perform BOLT optimizations without having to manually delete the output binary to force a new bolt run. Also: - add a clean-bolt target for purging BOLT files and hook that up to the clean target - .gitignore BOLT related files Before and after this refactor, `make` will no-op after a previous run. Both versions should also share common make DAG deficiencies where targets fail to trigger as often as they need to or can trigger prematurely in certain scenarios. e.g. after this change you may need to `rm profile-bolt-stamp` to force a BOLT run because there aren't appropriate non-phony targets for BOLT's make target to depend on. To make it easier to iterate on custom BOLT settings, the flags to pass to instrumentation and application are now defined in configure and can be overridden by passing BOLT_INSTRUMENT_FLAGS and BOLT_APPLY_FLAGS.
* Replace "OS X" with "macOS" (#104653)partev2023-05-201-2/+2
|
* GH-103484: Fix redirected permanently URLs (#104001)Rafael Fontenelle2023-05-023-3/+3
| | | | | Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com> Co-authored-by: Oleg Iarygin <dralife@yandex.ru>
* DOC: remove reference to OpenSolaris (#102671)partev2023-04-251-7/+0
|
* Change 'dependant' to 'dependent' (#103745)Christopher Chavez2023-04-241-1/+1
| | | | The word 'dependent' is both an adjective and a noun. A 'dependant' is a British alternative spelling for the noun form. In idlelib.sidebar, 'OS-dependant' is an adjective and clearly wrong. In 'Using', 'dependant' as a noun would be acceptable in Britain, but we use American spellings in Python docs. https://www.merriam-webster.com/words-at-play/spelling-variants-dependent-vs-dependant
* gh-95299: Stop installing setuptools as a part of ensurepip and venv (#101039)Pradyun Gedam2023-04-181-2/+5
| | | | | | | Remove the bundled setuptools wheel from ensurepip, and stop installing setuptools in environments created by venv. Co-Authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com> Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM> Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
* GH-83893: Cross reference env. vars and -X command line options (GH-103414)Furkan Onder2023-04-121-6/+12
| | | Co-authored-by: Erlend E. Aasland
* gh-101100: Documenting --prefix and --exec-prefix. (GH-102695)Julien Palard2023-03-152-1/+17
| | | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-102354: change python3 to python in docs examples (#102696)Paul Watson2023-03-141-1/+1
|
* gh-96821: Add config option `--with-strict-overflow` (#96823)Matthias Görgens2023-03-041-0/+5
| | | | | | Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Co-authored-by: Shantanu <hauntsaninja@gmail.com>
* gh-101467: Correct py.exe handling of prefix matches and cases when only one ↵Steve Dower2023-02-011-5/+30
| | | | runtime is installed (GH-101468)
* Fix trivial typo in shebang example (GH-101385)socal-nerdtastic2023-01-281-1/+1
| | | The example was showing the current version, but should be pinned to 3.7 to match the example command.
* gh-100247: Improve documentation for custom shebang commands in py.exe ↵Steve Dower2023-01-161-4/+5
| | | | launcher (GH-101083)
* gh-100247: Fix py.exe launcher not using entire shebang command for finding ↵Steve Dower2023-01-131-12/+27
| | | | custom commands (GH-100944)
* gh-100540: Remove obsolete '--with-system-ffi' configure option (GH-100544)Zachary Ware2022-12-281-5/+0
| | | | | It has had no effect on non-macOS platforms for a long time, and has had the non-obvious effect of invoking `pkg_config` and not setting `-DUSING_APPLE_OS_LIBFFI` on macOS since GH-22855.
* gh-100008: VS 2017 is required since Python 3.11 (#100045)Victor Stinner2022-12-061-0/+1
|
* gh-100008: Document Python build requirements (#100009)Victor Stinner2022-12-051-0/+46
| | | | Document also configure --without-freelists option added to Python 3.11.
* gh-99289: Add COMPILEALL_OPTS to Makefile (#99291)Victor Stinner2022-11-141-0/+7
| | | | | | | | Add COMPILEALL_OPTS variable in Makefile to override compileall options (default: -j0) in "make install". Also merge the compileall commands into a single command building PYC files for the all optimization levels (0, 1, 2) at once. Co-authored-by: Gregory P. Smith <greg@krypto.org>
* Support comparing two sets of pystats (GH-98816)Michael Droettboom2022-11-041-1/+2
| | | | | | | | | | This adds support for comparing pystats collected from two different builds. - The `--json-output` can be used to load in a set of raw stats and output a JSON file. - Two of these JSON files can be provided on the next run, and then comparative results between the two are output.
* gh-98692: Enable treating shebang lines as executables in py.exe launcher ↵Steve Dower2022-10-311-1/+7
| | | | (GH-98732)
* gh-96143: Improve perf profiler docs (#96445)Erlend E. Aasland2022-10-271-7/+10
|
* docs: Change links to label refs (#98454)Stanley2022-10-261-2/+2
| | | Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
* [doc] Refresh the venv introduction documentation, and correct the statement ↵Phil Elson2022-10-191-42/+0
| | | | | about VIRTUAL_ENV (GH-98350) Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
* Docs: Fix backtick errors found by sphinx-lint (#97998)Hugo van Kemenade2022-10-073-9/+9
| | | Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
* Remove extra spaces in custom openSSL documentation. (#93568)Xiao Chen2022-10-071-10/+10
|
* gh-97754: Update doc for default location of per-user installs on Windows ↵Ben Faulhaber2022-10-041-3/+6
| | | | (GH-97756)
* gh-96959: Update more HTTP links (GH-97536)Serhiy Storchaka2022-09-271-1/+1
| | | | Use HTTPS for documents which are available by both HTTP and HTTPS links, but there is no redirection from HTTP to HTTPS or vice versa.
* gh-96512: Update int_max_str docs to say 3.11 (#96942)Gregory P. Smith2022-09-191-2/+2
| | | | It was unknown if it'd be before 3.11.0 when creating the original changes. It's in 3.11rc2, so 3.11 it is.
* gh-89536: Use ThinLTO policy if possible (gh-96766)Dong-hee Na2022-09-161-0/+3
|
* gh-95778: CVE-2020-10735: Prevent DoS by very large int() (#96499)Gregory P. Smith2022-09-021-0/+13
| | | | | | | | | | | | | | | | Integer to and from text conversions via CPython's bignum `int` type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digits can consume several CPU seconds. This PR comes fresh from a pile of work done in our private PSRT security response team repo. Signed-off-by: Christian Heimes [Red Hat] <christian@python.org> Tons-of-polishing-up-by: Gregory P. Smith [Google] <greg@krypto.org> Reviews via the private PSRT repo via many others (see the NEWS entry in the PR). <!-- gh-issue-number: gh-95778 --> * Issue: gh-95778 <!-- /gh-issue-number --> I wrote up [a one pager for the release managers](https://docs.google.com/document/d/1KjuF_aXlzPUxTK4BMgezGJ2Pn7uevfX7g0_mvgHlL7Y/edit#). Much of that text wound up in the Issue. Backports PRs already exist. See the issue for links.
* gh-96143: Add some comments and minor fixes missed in the original PR (#96433)Pablo Galindo Salgado2022-08-301-0/+2
| | | | | | | | | * gh-96132: Add some comments and minor fixes missed in the original PR * Update Doc/using/cmdline.rst Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
* gh-96143: Allow Linux perf profiler to see Python calls (GH-96123)Pablo Galindo Salgado2022-08-301-0/+13
| | | | | | | :warning: :warning: Note for reviewers, hackers and fellow systems/low-level/compiler engineers :warning: :warning: If you have a lot of experience with this kind of shenanigans and want to improve the **first** version, **please make a PR against my branch** or **reach out by email** or **suggest code changes directly on GitHub**. If you have any **refinements or optimizations** please, wait until the first version is merged before starting hacking or proposing those so we can keep this PR productive.
* gh-90536: Fix link syntax to LLVM-BOLT repository (gh-96141)Dong-hee Na2022-08-201-1/+1
|
* gh-90536: Add support for the BOLT post-link binary optimizer (gh-95908)Kevin Modzelewski2022-08-181-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add support for the BOLT post-link binary optimizer Using [bolt](https://github.com/llvm/llvm-project/tree/main/bolt) provides a fairly large speedup without any code or functionality changes. It provides roughly a 1% speedup on pyperformance, and a 4% improvement on the Pyston web macrobenchmarks. It is gated behind an `--enable-bolt` configure arg because not all toolchains and environments are supported. It has been tested on a Linux x86_64 toolchain, using llvm-bolt built from the LLVM 14.0.6 sources (their binary distribution of this version did not include bolt). Compared to [a previous attempt](https://github.com/faster-cpython/ideas/issues/224), this commit uses bolt's preferred "instrumentation" approach, as well as adds some non-PIE flags which enable much better optimizations from bolt. The effects of this change are a bit more dependent on CPU microarchitecture than other changes, since it optimizes i-cache behavior which seems to be a bit more variable between architectures. The 1%/4% numbers were collected on an Intel Skylake CPU, and on an AMD Zen 3 CPU I got a slightly larger speedup (2%/4%), and on a c6i.xlarge EC2 instance I got a slightly lower speedup (1%/3%). The low speedup on pyperformance is not entirely unexpected, because BOLT improves i-cache behavior, and the benchmarks in the pyperformance suite are small and tend to fit in i-cache. This change uses the existing pgo profiling task (`python -m test --pgo`), though I was able to measure about a 1% macrobenchmark improvement by using the macrobenchmarks as the training task. I personally think that both the PGO and BOLT tasks should be updated to use macrobenchmarks, but for the sake of splitting up the work this PR uses the existing pgo task. * Simplify the build flags * Add a NEWS entry * Update Makefile.pre.in Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> * Update configure.ac Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> * Add myself to ACKS * Add docs * Other review comments * fix tab/space issue * Make it more clear that --enable-bolt is experimental * Add link to bolt's github page Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>
* gh-95155: Update "Using Python on a Mac" documentation (GH-95284)Howie Zhao2022-08-061-3/+4
| | | Co-authored-by: Łukasz Langa <lukasz@langa.pl>
* gh-93744: Remove configure --with-cxx-main option (#95651)Victor Stinner2022-08-051-19/+1
| | | | | | | | | | | | Remove the "configure --with-cxx-main" build option: it didn't work for many years. Remove the MAINCC variable from configure and Makefile. The MAINCC variable was added by the issue gh-42471: commit 0f48d98b740110a672b62d467af192ec160e56ba. Previously, --with-cxx-main was named --with-cxx. Keep CXX and LDCXXSHARED variables, even if they are no longer used by Python build system.
* Remove unnecessary text from documentation. (GH-95670)fluesvamp2022-08-041-1/+1
|
* gh-91838: Use HTTPS links in docs for resources which redirect to HTTPS ↵Serhiy Storchaka2022-08-042-2/+2
| | | | | | | | | | (GH-95527) If an HTTP link is redirected to a same looking HTTPS link, the latter can be used directly without changes in readability and behavior. It protects from a men-in-the-middle attack. This change does not affect Python examples.
* gh-94399: Restore PATH search behaviour of py.exe launcher for ↵Steve Dower2022-08-031-0/+5
| | | | '/usr/bin/env' shebang lines (GH-95582)
* gh-92219: Clarify that some options to the installer may break the install ↵Steve Dower2022-08-011-5/+9
| | | | (GH-95548)
* gh-95415: Make availability directive consistent (GH-95416)Christian Heimes2022-07-291-1/+1
|
* gh-85454: Remove distutils documentation (#95239)Christian Heimes2022-07-252-6/+5
| | | | Most places now refer to setuptools or link to setuptools documentation. Some examples like zipapp need to be updated later.
* GH-95029: Describe Windows Store package isolation and redirection in more ↵Anthony Shaw2022-07-211-3/+31
| | | | detail (GH-95030)
* Docs: remove redundant "adverb-adjective" hyphens from compound modifiers ↵Ned Batchelder2022-07-051-2/+2
| | | | | (GH-94551) Discussion: https://discuss.python.org/t/slight-grammar-fix-throughout-adverbs-dont-need-hyphen/17021
* gh-93851: Fix all broken links in Doc/ (GH-93853)Oleg Iarygin2022-06-213-6/+8
|
* gh-90539: doc: Expand on what should not go into CFLAGS, LDFLAGS (#92754)Matthias Köppe2022-06-201-0/+18
|
* gh-90300: split --help output into separate options (#30331)Éric2022-06-011-1/+26
| | | | | | Make --help output shorter and add new help options. --help-env, --help-xoptions and --help-all command-line options are added to complement --help.