---
title: "Introducing Incompatible Changes in Python - Victor Stinner"
tags: PyConAPAC2022, 2022-organize, 2022-共筆
---
# Introducing Incompatible Changes in Python - Victor Stinner
{%hackmd 3JQH2UcwQ1e5RMgz4GRiKg %}
<iframe src=https://app.sli.do/event/3e7qqXo63J3UifJdcj5cu6/ height=450 width=100%></iframe>
Slide link 投影片連結:
YouTube link 演講影片連結:TBA
> Collaborative writing start from below
> 從這裡開始共筆
>
Introducing Incompatible Changes in Python
this is the presention slides
https://github.com/vstinner/talks/blob/main/2022-PyconAPAC/python-incompatible-changes.pdf
Why incompatible changes?
PEP20
Consistent coding style
The Telstars - Håll dig till höger, Svensson.
https://www.youtube.com/watch?v=6ODZtwkBYPs
- Smooth Migration
- pyupgrade
- Python C API compatibility
- Test next python
- Fedora Copr
- GitHub CI (contiuous integration)
- Code Search
- Report/Fix affected projects
- documentation
- warnings
- PEP 587 – Backwards Compatibility
- 3 releases ( 3 years)
- PEP 602 – Annual Release Cycle for Python
- Python 2.7
- Semantic Versioning
- Hidden/Abandoned Software
- PEP 606 – Python Compatibility Version
- PEP 608 – Coordinated Python release
- C API
- PEP 620 – Hide implementation details from the C API
- PEP 670 – Convert macros to functions in the Python C API
- PEP 674 – Disallow using macros as l-values
- HPy project - A better C API for Python
- Examples
- Python
- PIP
- Code Type replace
- collections aliases
- Prefix or Suffix Variables in Python
- PEP 414 – Explicit Unicode Literal for Python 3.3
- C API
- PyFrameObject Python 3.11
- CPython
- NumPy
- Python 3.0
- PEP 594 – Removing dead batteries from the standard library
- Revert
- PEP 384 - Defining a Stable ABI
- PEP 652 – Maintaining the Stable ABI
- CI ABI Test
- PEP 652 – Maintaining the Stable ABI
https://github.com/vstinner/misc/tree/main/cpython
- https://github.com/asottile/pyupgrade
- https://github.com/python/pythoncapi-compat
Below is the part that speaker updated the talk/tutorial after speech
講者於演講後有更新或勘誤投影片的部份