mirror of
https://github.com/micropython/micropython.git
synced 2026-01-04 19:20:22 +01:00
docs: Update CPython differences and improve the look of table layouts.
Updated some of the CPython feature differences: - Updated status of some features. - Added CSS to fix table widths to 100% and word wrap. - Specified explicit table column ratios to improve layout appearance. - Added missing references to anchors. - Better consistency with use of formatting and case.
This commit is contained in:
committed by
Damien George
parent
2e386bcf76
commit
6b16ce8d38
@@ -5,72 +5,81 @@ Python 3.7
|
||||
|
||||
New Features:
|
||||
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| **Features:** | **Status** |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 538 <https://www.python.org/dev/peps/pep-0538/>`_ | Coercing the legacy C locale to a UTF-8 based | |
|
||||
| | locale | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 539 <https://www.python.org/dev/peps/pep-0539/>`_ | A New C-API for Thread-Local Storage in CPython | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 540 <https://www.python.org/dev/peps/pep-0540/>`_ | UTF-8 mode | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 552 <https://www.python.org/dev/peps/pep-0552/>`_ | Deterministic pyc | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 553 <https://www.python.org/dev/peps/pep-0553/>`_ | Built-in breakpoint() | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 557 <https://www.python.org/dev/peps/pep-0557/>`_ | Data Classes | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 560 <https://www.python.org/dev/peps/pep-0560/>`_ | Core support for typing module and generic types | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 562 <https://www.python.org/dev/peps/pep-0562/>`_ | Module __getattr__ and __dir__ | Partially done |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 563 <https://www.python.org/dev/peps/pep-0563/>`_ | Postponed Evaluation of Annotations | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 564 <https://www.python.org/dev/peps/pep-0564/>`_ | Time functions with nanosecond resolution | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 565 <https://www.python.org/dev/peps/pep-0565/>`_ | Show DeprecationWarning in __main__ | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
| `PEP 567 <https://www.python.org/dev/peps/pep-0567/>`_ | Context Variables | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+----------------+
|
||||
.. table::
|
||||
:widths: 20 60 20
|
||||
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| **Feature** | **Status** |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 538 <https://www.python.org/dev/peps/pep-0538/>`_ | Coercing the legacy C locale to a UTF-8 based | |
|
||||
| | locale | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 539 <https://www.python.org/dev/peps/pep-0539/>`_ | A New C-API for Thread-Local Storage in CPython | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 540 <https://www.python.org/dev/peps/pep-0540/>`_ | UTF-8 mode | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 552 <https://www.python.org/dev/peps/pep-0552/>`_ | Deterministic pyc | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 553 <https://www.python.org/dev/peps/pep-0553/>`_ | Built-in ``breakpoint()`` | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 557 <https://www.python.org/dev/peps/pep-0557/>`_ | Data Classes | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 560 <https://www.python.org/dev/peps/pep-0560/>`_ | Core support for typing module and generic types | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 562 <https://www.python.org/dev/peps/pep-0562/>`_ | Module ``__getattr__`` and ``__dir__`` | Partial |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 563 <https://www.python.org/dev/peps/pep-0563/>`_ | Postponed Evaluation of Annotations | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 564 <https://www.python.org/dev/peps/pep-0564/>`_ | Time functions with nanosecond resolution | Partial [#ftimenanosec]_ |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 565 <https://www.python.org/dev/peps/pep-0565/>`_ | Show DeprecationWarning in ``__main__`` | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
| `PEP 567 <https://www.python.org/dev/peps/pep-0567/>`_ | Context Variables | |
|
||||
+--------------------------------------------------------+--------------------------------------------------+--------------------------------------+
|
||||
|
||||
Other Language Changes:
|
||||
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| async and await are now reserved keywords | Completed |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| dict objects must preserve insertion-order | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| More than 255 arguments can now be passed to a function; a function can now have more than 255 parameters| |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| bytes.fromhex() and bytearray.fromhex() now ignore all ASCII whitespace, not only spaces | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| str, bytes, and bytearray gained support for the new isascii() method, which can be used to test if a | |
|
||||
| string or bytes contain only the ASCII characters | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ImportError now displays module name and module __file__ path whenfrom ... import ... fails | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| Circular imports involving absolute imports with binding a submodule to a name are now supported | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| object.__format__(x, '') is now equivalent to str(x) rather than format(str(self), '') | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| In order to better support dynamic creation of stack traces, types.TracebackType can now be instantiated | |
|
||||
| from Python code, and the tb_next attribute on tracebacks is now writable | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| When using the -m switch, sys.path[0] is now eagerly expanded to the full starting directory path, rather| |
|
||||
| than being left as the empty directory (which allows imports from the current working directory at the | |
|
||||
| time when an import occurs) | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
| The new -X importtime option or the PYTHONPROFILEIMPORTTIME environment variable can be used to show the | |
|
||||
| timing of each module import | |
|
||||
+----------------------------------------------------------------------------------------------------------+----------------+
|
||||
.. table::
|
||||
:widths: 90 10
|
||||
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``async`` and ``await`` are now reserved keywords | Complete |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``dict`` objects must preserve insertion-order | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| More than 255 arguments can now be passed to a function; a function can now have more than 255 parameters | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``bytes.fromhex()`` and ``bytearray.fromhex()`` now ignore all ASCII whitespace, not only spaces | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``str``, ``bytes``, and ``bytearray`` gained support for the new ``isascii()`` method, which can be used to | |
|
||||
| test if a string or bytes contain only the ASCII characters | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``ImportError`` now displays module name and module ``__file__`` path when ``from ... import ...`` fails | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| Circular imports involving absolute imports with binding a submodule to a name are now supported | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| ``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than ``format(str(self), '')`` | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| In order to better support dynamic creation of stack traces, ``types.TracebackType`` can now be | |
|
||||
| instantiated from Python code, and the ``tb_next`` attribute on tracebacks is now writable | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| When using the ``-m`` switch, ``sys.path[0]`` is now eagerly expanded to the full starting directory path, | |
|
||||
| rather than being left as the empty directory (which allows imports from the current working directory | |
|
||||
| at the time when an import occurs) | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| The new ``-X importtime`` option or the ``PYTHONPROFILEIMPORTTIME`` environment variable can be used to | |
|
||||
| show the timing of each module import | |
|
||||
+-----------------------------------------------------------------------------------------------------------------+----------------+
|
||||
|
||||
Changes to built-in modules:
|
||||
|
||||
.. table::
|
||||
:widths: 90 10
|
||||
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| `asyncio <https://docs.python.org/3/whatsnew/3.7.html#asyncio>`_ | |
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| asyncio (many, may need a separate ticket) | |
|
||||
| Too many to list | |
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| `gc <https://docs.python.org/3/whatsnew/3.7.html#gc>`_ | |
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
@@ -93,3 +102,7 @@ Changes to built-in modules:
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
| Mostly updates to support nanosecond resolution in PEP564, see above | |
|
||||
+------------------------------------------------------------------------------------------------------------+----------------+
|
||||
|
||||
.. rubric:: Notes
|
||||
|
||||
.. [#ftimenanosec] Only :func:`time.time_ns` is implemented.
|
||||
|
||||
Reference in New Issue
Block a user