Commit Graph

10765 Commits

Author SHA1 Message Date
Victor Stinner f085d19db9
PEP 756: Add PyUnicode_EXPORT_ALLOW_COPY flag (#3988) 2024-09-24 23:03:10 +02:00
Malcolm Smith 680c8b1c13
PEP 11: Add Android (#3989) 2024-09-23 11:03:39 -07:00
William Woodruff b92dd15120
PEP 740: ``data-provenance`` attribute value tweaks (#3971)
Signed-off-by: William Woodruff <william@yossarian.net>
Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2024-09-23 15:28:57 +01:00
William Woodruff 0b91fc8f54
PEP 753: Add suggested human-readable labels (#3974)
Signed-off-by: William Woodruff <william@yossarian.net>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-09-23 07:14:47 -07:00
Hugo van Kemenade c1310b79b4
Infra: Link RSS to website not feed (#3976) 2024-09-21 01:45:10 +01:00
Hugo van Kemenade e7d5f07322
Infra: Update `Makefile`to match CPython/Docs and devguide (#3985) 2024-09-21 01:44:12 +01:00
Sergey B Kirpichev ab9258da71
PEP 757: misc edits (#3984) 2024-09-20 15:36:32 +02:00
Robert Simpson c5010ea78b
PEP 3126: Minor Fix - Result Missing From Example Code (#3978) 2024-09-20 08:59:07 +03:00
Victor Stinner fa01a64551
PEP 756: Add Discussions-To and Post-History headers (#3981) 2024-09-19 21:57:53 +00:00
Victor Stinner 3b52323954
PEP 757: Cleanup (#3979)
* endian => endianness
* Move text to function documentations
* Discussions: add link to the PEP discussion
2024-09-19 23:28:22 +02:00
Sergey B Kirpichev 659cfe50a0
PEP 757: address review, sync with PR and prettify (#3975) 2024-09-19 11:02:45 +00:00
Victor Stinner 9475fa0aa4
PEP 757: Rename endian to endianness (#3973)
* Rephrase "Optimize small integers" section for import.
* Elaborate on PyLong_GetNativeLayout() validity.
* Mention PyLong_FreeExport() in the specification.
* Update benchmarks.
2024-09-18 13:59:58 +02:00
Brett Cannon 40bbaaa84a
PEP 751: updates based on user feedback (#3969)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-09-17 14:12:12 -07:00
Sergey B Kirpichev b4e7700a56
PEP 757: use PyLong_Export (#3970) 2024-09-17 17:38:13 +02:00
Victor Stinner b6cf6d47f3
PEP 756: Remove Open Questions (#3968) 2024-09-17 15:34:14 +02:00
Ofek Lev 80f7aadb73
PEP 755: Address feedback, round 1 (#3959) 2024-09-16 13:31:00 -07:00
Ofek Lev cff867a298
PEP 752: Address feedback, round 4 (#3955) 2024-09-16 13:28:38 -07:00
Victor Stinner 4878da5bd3
PEP 756: Fix buffer format (#3967)
Use the native encoding. "=I" size is 4 bytes on all platforms.
2024-09-16 14:36:10 +02:00
Victor Stinner 5a1529c658
PEP 757: Make PyLong_DigitArray.obj private (#3966) 2024-09-16 13:20:45 +02:00
Eric Traut 02a70341a2
PEP 747: Revised TypeForm specification (#3929)
Co-authored-by: David Foster <david@dafoster.net>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-09-15 15:10:35 -07:00
Victor Stinner 6e8dae04af
PEP 756: Remove flags (#3964) 2024-09-15 14:35:22 +02:00
Victor Stinner 981c37c4bd
PEP 757: Fix typo (#3963) 2024-09-15 14:33:16 +02:00
Sergey B Kirpichev 7bd5c21ca1
PEP 757: minor edits (#3962) 2024-09-14 14:26:39 +02:00
Victor Stinner 5ac83c8cb7
PEP 757: C API to import-export Python integers (#3961) 2024-09-14 11:33:01 +02:00
Victor Stinner e82e1e3f1a
PEP 756: PyUnicode_Export() (#3960) 2024-09-14 11:03:39 +02:00
Alyssa Coghlan e660248bea
PEP 501: Minor editing fixes (#3946)
Also fixes an incorrect comment about the impact
a CPython operand precedence bug will have on the
way template literals interact with regular strings.
2024-09-13 08:53:53 +00:00
Andy Castille 256b644fb3
PEP 744: fix broken links to benchmarking-public images (GH-3953) 2024-09-12 13:31:23 -07:00
Brian Schubert 507d0e53a3
PEP 2026: Fix repeated word typos (#3957)
Fix duplicated words in PEP 2026
2024-09-12 20:30:18 +03:00
Filipe Laíns 🇵🇸 430987f98a
PEP 739: Update based on discussion feedback (#3954) 2024-09-12 02:43:59 +00:00
William Woodruff ce38a96f43
PEP 753: Uniform URLs in core metadata (#3936)
Signed-off-by: William Woodruff <william@yossarian.net>
Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-09-10 12:07:31 -07:00
Petr Viktorin 2dd6c9dfee
PEP 7: Allow breaking lines before operators ("Knuth's style") (GH-3931)
As discussed in: https://discuss.python.org/t/62402

It doesn't make much sense for C and Python to be different here,
and the reasons for "Knuth's style" in PEP 8 apply to C code as well.
2024-09-09 16:02:27 +02:00
Ofek Lev 337a97e9ab
PEP 752, 755: update history (#3952)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-09-07 21:25:12 +03:00
Ofek Lev de6c462335
PEP 755: minor touchups (#3951) 2024-09-07 09:26:14 -07:00
Ofek Lev 144038b5b8
PEP 752: minor touchups (#3950) 2024-09-07 09:25:10 -07:00
Łukasz Langa 8fe3ce2fdd
PEP 619: PEP 664: Actual dates for Python 3.10.15 and Python 3.11.10 2024-09-07 11:41:02 +02:00
Łukasz Langa a9fec384f2
PEP 693: PEP 719: Actual dates for 3.12.6 and 3.13.0RC2 2024-09-07 11:38:37 +02:00
Ofek Lev 98f250e6e3
PEP 755: Implicit namespace policy for PyPI (#3947)
* PEP 755: Implicit namespace policy for PyPI

* address feedback

* address
2024-09-06 16:37:41 -07:00
Łukasz Langa 3dc61f086e
PEP 569: PEP 596: Actual dates of 3.8.20 and 3.9.20 2024-09-07 00:56:05 +02:00
Stephen Rosen 2ec2140ec8
PEP 735: expand "How to Teach This" (#3945)
With the addition of `project.dependencies` includes from Dependency
Groups, additions are warranted in the "How to Teach This" section of
the PEP.

Firstly, it is now useful to mention the similarity between a
dependency group and an old-style `setup.py` which reads either as

    setup(install_requires=_read_helper("requirements.txt"), ...)

or else as

    requirements = ["foo", ...]
    ...
    setup(install_requires=requirements, ...)

Secondly, discussion of the interfaces for Dependency Groups adds a
dimension to the document. For tool authors, this clarifies that
allowing `project.dependencies` to use includes is necessary for
build backends to declare support, but that there are no other formal
requirements for tools. They will have to decide on interfaces -- and
therefore what it means to support Dependency Groups -- for
themselves. The spec provides only for the data. Additionally, the
consequences for users, and the fact that this allows tools to define
and enforce additional rules (which they must document) are called out
explicitly.

Implicitly, this hints that it is possible for tools to have
conflicting requirements, so that it may become possible for toolA and
toolB to have incompatible or at least orthogonal needs. Due to the
relatively low risk of outright conflicts, and the ability of
responsible tool maintainers to work through such cases if they do
arise, this is not addressed at length.
2024-09-04 16:11:28 -07:00
Stephen Rosen 4660531503
PEP 735: allow core metadata to include groups (#3943)
PEP 735 is expanded here to allow `project.dependencies` and
`project.optional-dependencies` to use Dependency Group Includes. This
allows for includes which help satisfy the use-cases described by the
`--only-deps` pip use-cases.

The changes for this are various:
- support for these includes is added to the rationale section
- a new use case is added, aligned with the `--only-deps` use case
- the spec section is updated to list changes to the `project` table
- backwards compatibility is extended significantly to address
  repackaging concerns as well as dependency analyzers[^1]
- "how to teach this" is also extended to note compatibility and
  repackaging issues
- rejected ideas has added an item on `[build-system.requires]`

[^1]: It may be overstatement to say these concerns are addressed.
They are considered and not dismissed, but it is not clear that any
choices can be made in the spec to address these issues other than to
inform users.

Additionally, one unrelated change is included: the spec now notes
explicitly that extra names and dependency group names can overlap
(this was already possible, implicitly) and instructs tools to decide
on their own how to handle that if they present dependency groups and
extras via a uniform interface.

Co-authored-by: Brett Cannon <brett@python.org>
2024-09-04 14:27:31 -07:00
Alyssa Coghlan 147c58257f
PEP 501: update for tagged strings (#3944)
* switch to lazy conversion specifier processing (includes adding `operator.convert_field`)
* added proposal for `!()` as a new conversion specifier that invokes `__call__` (rather than `__repr__` or `__str__`)
* add `render_text` callback to `TemplateLiteral.render` signature (default value: `str`)
* new protocol: `typing.InterpolationTemplate` (protocol corresponding to the concrete `types.TemplateLiteral` type)
* new protocol: `typing.TemplateText` (equivalent to `Decoded` from PEP 750)
* new protocol: `typing.TemplateField` (inspired by `Interpolation` from PEP 750, with adjustments for eager field evaluation)
* new concrete type: `types.TemplateLiteralText` (equivalent to `DecodedConcrete` from PEP 750)
* new concrete type: `types.TemplateLiteralField` (inspired by `InterpolationConcrete` from PEP 750, with adjustments for eager field evaluation)
* added iteration support to `TemplateLiteral`, producing `TemplateLiteralText` and `TemplateLiteralField` instances in their order of appearance (keeping the "no empty TemplateLiteralText entries" rule from PEP 750)
* change the way `TemplateLiteral` works based on the way PEP 750 works
* added or updated discussion notes about several included and deferred features

Closes #3904
2024-09-04 23:15:40 +10:00
Ofek Lev da41ded5e9
PEP 752: Address feedback, round 3 (#3932)
* PEP 752: Address feedback, round 3

* address feedback
2024-09-03 19:28:55 -07:00
Hugo van Kemenade e5fecd4f9d
PEP 696: Mark as Final (#3941) 2024-09-03 10:24:02 -07:00
Hugo van Kemenade c529e186b3
PEP 702: Mark as Final (#3940) 2024-09-03 09:59:36 -07:00
Hugo van Kemenade 818bac5d1f
PEP 705: Mark as Final (#3938) 2024-09-03 16:53:33 +01:00
Hugo van Kemenade 752fb666bd
PEP 742: Mark as Final (#3937) 2024-09-03 08:34:38 -07:00
Pavel Karateev 77c09421e5
PEP 705: Remove extra `self` parameter from example (#3934) 2024-09-03 08:07:09 -07:00
Victor Stinner d7f551c405
PEP 741: Set Status to Final (#3935)
Update also Implementation links.
2024-09-03 13:37:25 +00:00
Victor Stinner dc700c2cf8
PEP 741: Update options (#3927)
* Remove read-only options:

  * "module_search_paths_set": not useful, always true.
  * "pythonpath_env": get os.environ['PYTHONPATH'] directly.
  * "sys_path_0": only make sense during Python initialization.
  * "_install_importlib", "_init_main", "_is_python_build": private
    options which only make sense during Python initialization.

* Fix related sys API for base_executable and exec_prefix.
* legacy_windows_fs_encoding is Windows only.
* Fix sorting.
2024-09-02 23:19:23 +02:00
khneal 82dfea0b87
PEP 693: Note release of Python 3.12.5 (#3925) 2024-09-01 06:26:46 +01:00