Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/components/python-docs/latest%252Flatestwhatsnew32/changes/?format=api&page=3
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 1575,
    "next": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/changes/?format=api&page=4",
    "previous": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/changes/?format=api&page=2",
    "results": [
        {
            "unit": "https://hosted.weblate.org/api/units/108798099/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217876+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(:issue:`6713` by Gawain Bolton, Mark Dickinson, and Victor Stinner.)",
                "old_state": -1
            },
            "id": 71034917,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034917/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798097/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217853+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Integer to string conversions now work two \"digits\" at a time, reducing the number of division and modulo operations.",
                "old_state": -1
            },
            "id": 71034916,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034916/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798095/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217831+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Patch by Florent Xicluna in :issue:`7622` and :issue:`7462`.)",
                "old_state": -1
            },
            "id": 71034915,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034915/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798094/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217795+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The fast-search algorithm in stringlib is now used by the :meth:`split`, :meth:`rsplit`, :meth:`splitlines` and :meth:`replace` methods on :class:`bytes`, :class:`bytearray` and :class:`str` objects. Likewise, the algorithm is also used by :meth:`rfind`, :meth:`rindex`, :meth:`rsplit` and :meth:`rpartition`.",
                "old_state": -1
            },
            "id": 71034914,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034914/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798093/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217773+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Contributed by Antoine Pitrou; :issue:`3001`.)",
                "old_state": -1
            },
            "id": 71034913,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034913/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798092/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217750+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Recursive locks (created with the :func:`threading.RLock` API) now benefit from a C implementation which makes them as fast as regular locks, and between 10x and 15x faster than their previous pure Python implementation.",
                "old_state": -1
            },
            "id": 71034912,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034912/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798091/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217728+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Contributed by Antoine Pitrou in :issue:`7451` and by Raymond Hettinger and Antoine Pitrou in :issue:`10314`.)",
                "old_state": -1
            },
            "id": 71034911,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034911/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798089/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217706+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "JSON decoding performance is improved and memory consumption is reduced whenever the same string is repeated for multiple keys.  Also, JSON encoding now uses the C speedups when the ``sort_keys`` argument is true.",
                "old_state": -1
            },
            "id": 71034910,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034910/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798087/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217683+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Patch by Daniel Stutzbach in :issue:`9915`.)",
                "old_state": -1
            },
            "id": 71034909,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034909/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798086/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217661+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The `Timsort algorithm <https://en.wikipedia.org/wiki/Timsort>`_ used in :meth:`list.sort` and :func:`sorted` now runs faster and uses less memory when called with a :term:`key function`.  Previously, every element of a list was wrapped with a temporary object that remembered the key value associated with each element.  Now, two arrays of keys and values are sorted in parallel.  This saves the memory consumed by the sort wrappers, and it saves time lost to delegating comparisons.",
                "old_state": -1
            },
            "id": 71034908,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034908/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798085/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217638+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Contributed by Alexandre Vassalotti, Antoine Pitrou and the Unladen Swallow team in :issue:`9410` and :issue:`3873`.)",
                "old_state": -1
            },
            "id": 71034907,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034907/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798084/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217616+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Serializing and unserializing data using the :mod:`pickle` module is now several times faster.",
                "old_state": -1
            },
            "id": 71034906,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034906/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798083/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217594+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Patch and additional tests contributed by Dave Malcolm; :issue:`6690`).",
                "old_state": -1
            },
            "id": 71034905,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034905/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798082/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217571+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Now that the speed penalty is gone, it is practical to start writing membership tests using set-notation.  This style is both semantically clear and operationally fast::",
                "old_state": -1
            },
            "id": 71034904,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034904/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798080/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217548+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Python's peephole optimizer now recognizes patterns such ``x in {1, 2, 3}`` as being a test for membership in a set of constants.  The optimizer recasts the :class:`set` as a :class:`frozenset` and stores the pre-built constant.",
                "old_state": -1
            },
            "id": 71034903,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034903/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798078/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217526+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "A number of small performance enhancements have been added:",
                "old_state": -1
            },
            "id": 71034902,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034902/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798077/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217504+01:00",
            "action": 59,
            "target": "Otimizações",
            "old": "",
            "details": {
                "state": 20,
                "source": "Optimizations",
                "old_state": -1
            },
            "id": 71034901,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034901/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798076/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217481+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Regular and recursive lock acquisitions can now be interrupted by signals on platforms using Pthreads.  This means that Python programs that deadlock while acquiring locks can be successfully killed by repeatedly sending SIGINT to the process (by pressing :kbd:`Ctrl+C` in most shells). (Contributed by Reid Kleckner; :issue:`8844`.)",
                "old_state": -1
            },
            "id": 71034900,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034900/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798075/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217459+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Similarly, :meth:`threading.Semaphore.acquire` also gained a *timeout* argument.  (Contributed by Torsten Landschoff; :issue:`850728`.)",
                "old_state": -1
            },
            "id": 71034899,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034899/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798073/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217436+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Regular and recursive locks now accept an optional *timeout* argument to their :meth:`~threading.Lock.acquire` method.  (Contributed by Antoine Pitrou; :issue:`7316`.)",
                "old_state": -1
            },
            "id": 71034898,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034898/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798071/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217413+01:00",
            "action": 59,
            "target": "(Contribuição de Antoine Pitrou.)",
            "old": "",
            "details": {
                "state": 20,
                "source": "(Contributed by Antoine Pitrou.)",
                "old_state": -1
            },
            "id": 71034897,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034897/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798070/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217390+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Additional details about the implementation can be read from a `python-dev mailing-list message <https://mail.python.org/pipermail/python-dev/2009-October/093321.html>`_ (however, \"priority requests\" as exposed in this message have not been kept for inclusion).",
                "old_state": -1
            },
            "id": 71034896,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034896/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798069/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217368+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The mechanism for serializing execution of concurrently running Python threads (generally known as the :term:`GIL` or Global Interpreter Lock) has been rewritten.  Among the objectives were more predictable switching intervals and reduced overhead due to lock contention and the number of ensuing system calls.  The notion of a \"check interval\" to allow thread switches has been abandoned and replaced by an absolute duration expressed in seconds.  This parameter is tunable through :func:`sys.setswitchinterval()`. It currently defaults to 5 milliseconds.",
                "old_state": -1
            },
            "id": 71034895,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034895/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798068/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217345+01:00",
            "action": 59,
            "target": "Multi-threading",
            "old": "",
            "details": {
                "state": 20,
                "source": "Multi-threading",
                "old_state": -1
            },
            "id": 71034894,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034894/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798066/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217322+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Moved from the Demo directory by Alexander Belopolsky in :issue:`10199`.)",
                "old_state": -1
            },
            "id": 71034893,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034893/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798064/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217300+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The demonstration code for the :mod:`turtle` module was moved from the *Demo* directory to main library.  It includes over a dozen sample scripts with lively displays.  Being on :attr:`sys.path`, it can now be run directly from the command-line:",
                "old_state": -1
            },
            "id": 71034892,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034892/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798063/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217277+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "turtledemo",
                "old_state": -1
            },
            "id": 71034891,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034891/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798062/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217254+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Contributed by R. David Murray, with efforts from Steffen Daode Nurpmeso and an initial patch by Victor Stinner in :issue:`9124`.)",
                "old_state": -1
            },
            "id": 71034890,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034890/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798061/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217231+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "It is still possible to get non-binary output using the old API's :meth:`~mailbox.Mailbox.get_string` method, but that approach is not very useful.  Instead, it is best to extract messages from a :class:`~mailbox.Message` object or to load them from binary input.",
                "old_state": -1
            },
            "id": 71034889,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034889/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798060/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217208+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "There is also support for binary output.  The :meth:`~mailbox.Mailbox.get_file` method now returns a file in the binary mode (where it used to incorrectly set the file to text-mode).  There is also a new :meth:`~mailbox.Mailbox.get_bytes` method that returns a :class:`bytes` representation of a message corresponding to a given *key*.",
                "old_state": -1
            },
            "id": 71034888,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034888/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798058/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217186+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": ":class:`~io.StringIO` and text file input are deprecated.  Also, string input will fail early if non-ASCII characters are used.  Previously it would fail when the email was processed in a later step.",
                "old_state": -1
            },
            "id": 71034887,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034887/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798056/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217164+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "As expected, the :meth:`~mailbox.Mailbox.add` method for :class:`mailbox.Mailbox` objects now accepts binary input.",
                "old_state": -1
            },
            "id": 71034886,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034886/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798055/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217141+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The solution harnessed the :mod:`email` package's binary support for parsing arbitrary email messages.  In addition, the solution required a number of API changes.",
                "old_state": -1
            },
            "id": 71034885,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034885/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798054/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217119+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Thanks to a concerted effort by R. David Murray, the :mod:`mailbox` module has been fixed for Python 3.2.  The challenge was that mailbox had been originally designed with a text interface, but email messages are best represented with :class:`bytes` because various parts of a message may have different encodings.",
                "old_state": -1
            },
            "id": 71034884,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034884/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798053/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217096+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "mailbox",
                "old_state": -1
            },
            "id": 71034883,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034883/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798052/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.217056+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(Work by Nick Coghlan, Dan Mahn, and Senthil Kumaran in :issue:`2987`, :issue:`5468`, and :issue:`9873`.)",
                "old_state": -1
            },
            "id": 71034882,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034882/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798050/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215751+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "As detailed in :ref:`parsing-ascii-encoded-bytes`, all the :mod:`urllib.parse` functions now accept ASCII-encoded byte strings as input, so long as they are not mixed with regular strings.  If ASCII-encoded byte strings are given as parameters, the return types will also be an ASCII-encoded byte strings:",
                "old_state": -1
            },
            "id": 71034881,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034881/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798048/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215720+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "And, the :func:`~urllib.parse.urlencode` function is now much more flexible, accepting either a string or bytes type for the *query* argument.  If it is a string, then the *safe*, *encoding*, and *error* parameters are sent to :func:`~urllib.parse.quote_plus` for encoding::",
                "old_state": -1
            },
            "id": 71034880,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034880/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798047/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215697+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The :func:`~urllib.parse.urldefrag` function now returns a :term:`named tuple`::",
                "old_state": -1
            },
            "id": 71034879,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034879/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798046/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215674+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The :func:`~urllib.parse.urlparse` function now supports `IPv6 <https://en.wikipedia.org/wiki/IPv6>`_ addresses as described in :rfc:`2732`:",
                "old_state": -1
            },
            "id": 71034878,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034878/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798045/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215651+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "A number of usability improvements were made for the :mod:`urllib.parse` module.",
                "old_state": -1
            },
            "id": 71034877,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034877/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798044/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215628+01:00",
            "action": 59,
            "target": "urllib.parse",
            "old": "",
            "details": {
                "state": 20,
                "source": "urllib.parse",
                "old_state": -1
            },
            "id": 71034876,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034876/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798042/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215605+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "(All changes contributed by Łukasz Langa.)",
                "old_state": -1
            },
            "id": 71034875,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034875/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798040/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215582+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "A number of smaller features were also introduced, like support for specifying encoding in read operations, specifying fallback values for get-functions, or reading directly from dictionaries and strings.",
                "old_state": -1
            },
            "id": 71034874,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034874/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798039/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215558+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "There is support for pluggable interpolation including an additional interpolation handler :class:`~configparser.ExtendedInterpolation`::",
                "old_state": -1
            },
            "id": 71034873,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034873/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798038/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215535+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The INI file structure accepted by config parsers can now be customized. Users can specify alternative option/value delimiters and comment prefixes, change the name of the *DEFAULT* section or switch the interpolation syntax.",
                "old_state": -1
            },
            "id": 71034872,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034872/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798037/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215513+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The new API is implemented on top of the classical API, so custom parser subclasses should be able to use it without modifications.",
                "old_state": -1
            },
            "id": 71034871,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034871/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798036/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215489+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "Config parsers gained a new API based on the mapping protocol::",
                "old_state": -1
            },
            "id": 71034870,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034870/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798034/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215466+01:00",
            "action": 59,
            "target": "",
            "old": "",
            "details": {
                "state": 0,
                "source": "The :mod:`configparser` module was modified to improve usability and predictability of the default parser and its supported INI syntax.  The old :class:`ConfigParser` class was removed in favor of :class:`SafeConfigParser` which has in turn been renamed to :class:`~configparser.ConfigParser`. Support for inline comments is now turned off by default and section or option duplicates are not allowed in a single configuration source.",
                "old_state": -1
            },
            "id": 71034869,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034869/?format=api"
        },
        {
            "unit": "https://hosted.weblate.org/api/units/108798032/?format=api",
            "component": "https://hosted.weblate.org/api/components/python-docs/latest%252Flatestwhatsnew32/?format=api",
            "translation": "https://hosted.weblate.org/api/translations/python-docs/latest%252Flatestwhatsnew32/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2023-11-08T16:39:43.215443+01:00",
            "action": 59,
            "target": "configparser",
            "old": "",
            "details": {
                "state": 20,
                "source": "configparser",
                "old_state": -1
            },
            "id": 71034868,
            "action_name": "String updated in the repository",
            "url": "https://hosted.weblate.org/api/changes/71034868/?format=api"
        }
    ]
}