Other articles


  1. asyncio: WSARecv() cancellation causing data loss

    In December 2017, Yury Selivanov pushed the long awaited start_tls() function.

    A newly added test failed on Windows. Later, the test started to fail randomly on Linux as well. In fact, it was a well hidden race condition in the asynchronous handshake of SSLProtocol which will take 5 months of …

    read more
  2. Asyncio: Proactor Cancellation From Hell

    Between 2014 and 2015, I was working on the new shiny asyncio module (module added to Python 3.4 released in March 2014). I helped to stabilize the Windows implementation because... well, nobody else was paying attention to it, and I was worried that test_asyncio randomly crashed on Windows.

    One …

    read more
  3. Locale Bugfixes in Python 3

    This article describes a few locales bugs that I fixed in Python 3 between 2012 (Python 3.3) and 2018 (Python 3.7):

    • Support non-ASCII decimal point and thousands separator
    • Crash with non-ASCII decimal point
    • LC_NUMERIC encoding different than LC_CTYPE encoding
    • LC_MONETARY encoding different than LC_CTYPE encoding
    • Tests non-ASCII locales …
    read more
  4. Python 3, locales and encodings

    Recently, I worked on a change which looked simple: move the code to initialize the sys.stdout encoding before Py_Initialize(). While I was on it, I also decided to move the code which selects the Python "filesystem encoding". I didn't expect that I would spend 2 weeks on these issues …

    read more
  5. Python 3.7 UTF-8 Mode

    Since Python 3.0 was released in 2008, each time an user reported an encoding issue, someone showed up and asked why Python does not "simply" always use UTF-8. Well, it's not that easy. UTF-8 is the best encoding in most cases, but it is still not the best encoding …

    read more
  6. Python 3.7 and the POSIX locale

    During the childhood of Python 3, encodings issues were common, even on well configured systems. Python used UTF-8 rather than the locale encoding, and so commonly produced mojibake. For these reasons, when users complained about the Python behaviour with the POSIX locale, bug reports were closed with a message like …

    read more

Page 1 / 6 »

links

social