PEP 590: Use size_t for "number of arguments + flag" by encukou · Pull Request #1066 · python/peps

@encukou

Bitwise operations are not well defined on signed values in C.

@encukou

jdemeyer

Changing the frame API semantics based on whether or not a
tracing function is active is tricky to implement and hard
to document clearly, so this simplifies the proposal by
instead having the frame API always expose a write-through
proxy at function scope, and restricting the dynamic
snapshot behaviour to the locals() builtin.
…ython#1069)

- new design discussion section to cover the requirement that the
  semantics of locals() itself at function scope be left alone
- propose a C level API that exactly matches Python level
  frame.f_locals semantics
- other minor text formatting and wording updates
* Fix markup for wave section

* Add estimated EOL for 3.9

* mention pynntp and why getopt and wave stay

* Add Ned's suggestion

@tiran

@tiran

@tiran

@tiran

@encukou

As discussed on the typing-sig mailing list, the currently specified behavior for `# type: ignore` on a line by itself has remained mostly unimplemented and doesn't seem useful. Instead, the PEP now mandates a syntax for ignoring all errors in a specific file, which is more obviously useful.

I considered adding a sentence like "Individual type checkers may add additional syntax for silencing errors", but it didn't seem particularly useful since type checkers in general are free to add extensions to what PEP 484 specifies.

While I was at it I added a reference to PEP 526 to an out-of-date sentence adjacent to the modified paragraph.
* Add my initial draft

* PEP 593: update PEP structure and add content.

* PEP 593: Push updates

* PEP 593: expand the "Improving Roundup" section and move it to the top.

* PEP 593: expand the "Roundup advantages" and "Migration considerations" sections.

* PEP 595 (was 593): expand and reword some sections.

* PEP 595: rename file

* PEP 595: remove Discussion-To header, fix formatting of Author header.
Co-Authored-By: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* Add "Experimental Multi-Phase Initialization API" section
* Add PyPreConfig._config_init private field.
* Rename PyInitError to PyStatus.
* Rename PyInitError_Failed() to PyStatus_Exception()
* Rename Py_ExitInitError() to Py_ExitStatusException()
* Fix Python Configuration default values: isolated=0
  and use_environment=1, instead of -1.
* Document isolated field and #ifdef MS_WINDOWS
* Define path conf function
* Fix _init_main=0 example: set config._init_main to 0!
* Document special builds needed by some speficic options like
  show_alloc_count.
* Specify that preconfiguration only requires command line arguments
  for the "Python Configuration" (not for "Isolated Configuration").

@Nightblade @tiran

@matrixise @tiran

* changed refrained to referred

* changed cooperate to corporate

@ilevkivskyi

@pitrou

* PEP 594: deprecate telnetlib
* PEP 594: Deprecate email compat32 APIs
* Add 'added in' years to table
* Reference other PEPs, update sections for cgi and audio mods
* Fix typo and table entries (thanks Jelle and Brett)

@encukou

@encukou

@encukou encukou deleted the pep590-size-type branch

May 28, 2019 09:36