Just released: em 4.4.0, the CLI emoji keyboard πβ¨οΈβ¨
β¨ Upgraded to emojilib 4.0.0: "The keywords include most if not all the :shortcode: from different platforms"
β¨ Dropped support for oh-so-very-nearly-EOL Python 3.8.
Just released: em 4.4.0, the CLI emoji keyboard πβ¨οΈβ¨
β¨ Upgraded to emojilib 4.0.0: "The keywords include most if not all the :shortcode: from different platforms"
β¨ Dropped support for oh-so-very-nearly-EOL Python 3.8.
Just released: termcolor 2.5.0: ANSI colour formatting for terminal output
ππ₯οΈπ¨
π₯οΈ Added `strike` attribute
π₯οΈ Now generates and uploads #PEP740 attestations to PyPI
π₯οΈ Dropped support for oh-so-very-nearly-EOL Python 3.8
Just released: Tablib 3.7.0 π
π¦ Add sparkly new Python 3.13
π¦ Drop EOL Python 3.8
π¦ Add styling to datetime, date and time values for ODS
π¦ Add styling for date/time types for XLS
π¦ Fix time and datetime export in ODS format
π¦ Avoid normalizing input twice in import_set/book
Just released: #cherry_picker 2.3.0 π
This tool creates backports for CPython when the Miss Islington bot can't, usually due to a merge conflict.
π Add support for #Python 3.13, drop EOL 3.8
π Resolve usernames when remote ends with a trailing slash
π Optimize validate_sha() with --max-count=1
π Remove multiple commit prefixes
π Handle whitespace when calculating usernames
π Publish to PyPI using #TrustedPublishers
π Generate #PEP740 attestations
π And more!
Big day for releases! I accidentally scheduled my very first ever CPython release for the same day as my turn to do the @pillow quarterly release. It'll be fine! Might release everything* else today as well for good measure.
The Pillow release has begun, you can follow along the wheel build+PyPI publish CI here, it'll be done in a couple of hours or so:
https://github.com/python-pillow/Pillow/actions/runs/11340141751
"It'll be fine!" says I
"lol" says CI
Fixes in progress! π€
Just released: @pillow 11.0.0 π
π¨ Add support for Python 3.13, including experimental freethreaded wheels!
ποΈ Drop support for EOL Python 3.8
π¨ Remove a whole load of deprecations
ποΈ Add, change and fix a whole lot more stuff
π¨ Add some more deprecations, to be removed in Pillow 12 next October
ποΈ More info at https://pillow.readthedocs.io/en/stable/releasenotes/11.0.0.html
π¨ And even more at https://github.com/python-pillow/Pillow/releases/tag/11.0.0
Just released: pypistats 1.7.0 π
π Generate digital attestations for PyPI (PEP 740)
π Drop support for EOL Python 3.8
π Generate __version__ at build to avoid slow importlib.metadata
Just released: Python 3.14.0a1 π
https://discuss.python.org/t/python-3-14-0-alpha-1/68039
π PEP 649: deferred evaluation of annotations
π Improved error messages
π And more!
Itβs now time for a new alpha of a new version of Python! This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.13 is still in development. This release, 3.14.0a1 is the first of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2025-...
Just released: pepotron 1.3.0 π
π© Generate digital attestations for PyPI (PEP 740)
π© Drop support for Python 3.8
π© Generate __version__ at build to avoid slow importlib.metadata
π© Test on CI with uv
https://pypi.org/project/pepotron/1.3.0/
Pepotron is a CLI for opening PEPs in your browser. For example, try:
$ pep 8
$ pep 3.14
$ pep dead batteries
$ pep calendar
Just released: norwegianblue 0.19.0 π
π¦ Drop support for Python 3.8
π¦ Generate digital attestations for PyPI (PEP 740)
π¦ Test with tox-uv
π¦ Lint with pre-commit-uv
https://pypi.org/project/norwegianblue/0.19.0/
norwegianblue is a CLI to show EOLs from https://endoflife.date
Just released: blurb 1.3.0 π
blurb is the CLI we use for managing CPython's news/changelog entries.
ποΈ Add support for Python 3.13
ποΈ Drop support for Python 3.8
ποΈ Generate digital attestations for PyPI (PEP 740)
ποΈ Allow running blurb test from blurb-* directories by
ποΈ Add version subcommand
ποΈ Generate __version__ at build to avoid slow importlib.metadata
https://pypi.org/project/blurb/1.3.0/
#Python #CPython #blurb #release #CLI #changelog #news #PEP740 #Python313 #Python38
Just released: flake8-implicit-str-concat π
π± Add support for #Python 3.12-3.13, drop 3.7-3.8
π± Switch from Flit to Hatchling + hatch-vcs for dynamic versioning
π± Release to PyPI with Trusted Publishing
https://pypi.org/project/flake8-implicit-str-concat/0.5.0/
This #Flake8 plugin helps tidy up after Black:
$ cat 1.py
s = ('111'
'222')
$ black 1.py
reformatted 1.py
All done! β¨ π° β¨
1 file reformatted.
$ cat 1.py
s = "111" "222"
$ flake8 1.py
1.py:1:10: ISC001 implicitly concatenated string literals on one line
Just released! stravavis 0.5.0 π
Create artistic visualisations with your exercise data.
https://pypi.org/project/stravavis/0.5.0/
π΄ Drop support for EOL Python 3.8
π Skip segments in GPX tracks with empty trkseg
πΆ Fix pandas warnings
Just released! Python Docs Sphinx Theme 2024.10 π
https://pypi.org/project/python-docs-theme/2024.10/
π Add support for Python 3.13
π Drop support for Python 3.8
π Add script for handling translations
π Generate digital attestations for PyPI (PEP 740)
This is the theme used by docs sites such https://docs.python.org and https://typing.readthedocs.io
#Python #docs #Sphinx #PythonDocsTheme #PythonDocsSphinxTheme #PEP740
Just released! PrettyTable 3.12 π
https://pypi.org/project/prettytable/3.12.0/
πͺ Add new themes to ColorTable
πͺ Drop support for Python 3.8
πͺ Deprecate hrule and tableStyle constants
πͺ Use SPDX license identifier
πͺ Add lots of type annotations
πͺ Generate __version__ at build to avoid slow importlib.metadata
πͺ Release to PyPI using Trusted Publishing and PEP 703 digital attestations
πͺ Fix drawing headerless coloured tables with title
πͺ And more!
Just released: Python 3.14.0a2 π
https://discuss.python.org/t/python-3-14-0-alpha-2/71711
π PEP 649: Deferred evaluation of annotations
π PEP 741: Python configuration C API
π PEP 761: Deprecating PGP signatures for CPython artifacts
π Improved error messages
π And more!
https://docs.python.org/3.14/whatsnew/3.14.html
#Python #CPython #Python314 #release #PEP649 #PEP741 #PEP761
Alpha 2? But Alpha 1 only just came out! This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.14 is still in development. This release, 3.14.0a2 is the second of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2025-05-06) and, if n...
Just released: Python 3.14.0a3 π
https://discuss.python.org/t/python-3-14-0-alpha-3/74542
https://docs.python.org/3.14/whatsnew/
This release brought to you by tea and homemade mince pies.
O Alpha 3, O Alpha 3, how lovely are your branches! https://www.python.org/downloads/release/python-3140a3/ This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.14 is still in development. This release, 3.14.0a3, is the third of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be...
Oh, and taking inspiration from #pytest, I added colour to #unittest output in this one π¨
Just released: Python 3.14.0a4 π
https://discuss.python.org/t/python-3-14-0-alpha-4/77112
https://docs.python.org/3.14/whatsnew/3.14.html
Here's one amazing reason to try it out! ποΈπ¨
Hello, three dot fourteen dot zero alpha four! https://www.python.org/downloads/release/python-3140a4/ This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.14 is still in development. This release, 3.14.0a4, is the fourth of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be add...
Just released: Python 3.14.0a5 π
https://discuss.python.org/t/python-3-14-0-alpha-5/80364
https://docs.python.org/3.14/whatsnew/3.14.html
Also recently released!
blurb 2.0.0
cherry-picker 3.5.0
pypistats 1.8.0
PrettyTable 3.13.0 & 3.14.0
tox-dev/action-pre-commit-uv 1.0.2
em-keyboard 5.0.0
Here comes the antepenultimate alpha. https://www.python.org/downloads/release/python-3140a5/ This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.14 is still in development. This release, 3.14.0a5, is the fifth of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up unti...
Especially for Ο day and #FediDonutFriday!
Just released: Python 3.14.0a6 π
https://discuss.python.org/t/python-3-14-0-alpha-6/84513
https://docs.python.org/3.14/whatsnew/3.14.html
This release brought to you by a Karelian pie (Karjalanpiirakka), a strawberry and gooseberry pie (mansikka-karviais piirakka) and a slice of blueberry pie (mustikkapiirakka).
#Python #CPython #Python314 #release #food #PiDay #PiiPΓ€ivΓ€ #pie #FediDonutFriday
Here comes the penultimate alpha. https://www.python.org/downloads/release/python-3140a6/ This is an early developer preview of Python 3.14 Major new features of the 3.14 series, compared to 3.13 Python 3.14 is still in development. This release, 3.14.0a6, is the sixth of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until th...
Just released: pypistats 1.9.0 π
pypistats is CLI to show download stats from PyPI
https://pypi.org/project/pypistats/1.9.0/
* Replace deprecated classifier with licence expression (PEP 639)
* Remove GitHub attestation, uses PyPI attestations instead (PEP 740)
* Add input validation for total and fix --monthly with no mirror
* Update docs for recent command
Just released: humanize 4.12.2 π
Bugfix release, mainly fixing the spelling of licence/license so the file is properly included in the package.
Reminder how to do PEP 639 metadata: https://hugovk.dev/blog/2025/improving-licence-metadata/
Just released: PrettyTable 3.16 π
Just released: norwegianblue 0.21.0 π
Add support for OSC 8 hyperlinks in the terminal.
https://github.com/prettytable/prettytable/releases/tag/3.16.0
norwegianblue now uses this to create hyperlinks in the terminal instead of printing a wide column of links. Use command+click with iTerm.
Also create hyperlinks for Markdown, reStructuredText and HTML output.
https://github.com/hugovk/norwegianblue/releases/tag/0.21.0
Attached are before and after images.
Just released: termcolor 3.0.0 π
ANSI colour formatting for the terminal.
π¨ Add support for Python 3.14
π¨ Only apply FORCE_COLOR, NO_COLOR & ANSI_COLORS_DISABLED env vars when present & not an empty string
π¨ Replace literal types with strings
π¨ Replace deprecated classifier with licence expression (PEP 639)
π¨ Speedup: move typing imports into type-checking block
π¨ Remove deprecated __ALL__, use __all__ instead
Just released: Python 3.14.0a7 π
Just released: Python 3.13.3 ππ
Just released: Python 3.12.10 πππ
Just released: Python 3.11.12 ππππ
Just released: Python 3.10.17 πππππ
Just released: Python 3.9.22 ππππππ
Last 3.14 alpha! Less than a month to get new features in before beta!
Last 3.12 bugfix release! Now in security fix only!
And security releases of 3.9-3.11.
Please upgrade 3.9-3.13!
Please test 3.14!
Not one, not two, not three, not four, not five, but six releases! Is this the most in a single day? 3.12-3.14 were regularly scheduled, and we had some security fixes to release in 3.9-3.11 so letβs make a big day of it. This also marks the last bugfix release of 3.12 as it enters the security-only phase. See devguide.python.org/versions/ for a chart. Python 3.14.0a7 Here comes the final alpha! This means we have just four weeks until the first beta to get those last features into 3.14 before...
Just released: Pillow 11.2.1 π
There was meant to be a 11.2.0 on 1st April, but we put too much good stuff in the wheels and hit the @pypi.org project limit before it could all be uploaded. That was yanked and now deleted and 11.2.1 is back to normal size.
We'll try and put the good stuff back for 11.3.0 on 1st July but take up less space.
Attached: 3 images πππ¨ Pillow 11.2.1 has been released! What happened to 11.2.0? Two things: we added AVIF support which made the wheels much bigger, and we hit the PyPI project size limit before the release could be fully updated. 11.2.1 instead has AVIF support but needs to be built from source. We'll look into including AVIF in wheels in a future release so that the size doesn't increase so much. This release also adds Arrow support and more: https://pillow.readthedocs.io/en/stable/releasenotes/11.2.1.html #Python #Pillow #PythonPillow #release
Just released: Python Docs Theme 2025.4 π
π Require Sphinx 7.3
π Add support for Python 3.14
π Drop support for Python 3.10-3.11
π Copy button for code samples
π PEP 639 licence metadata
π and more!
https://github.com/python/python-docs-theme/releases
Thanks to Tomas Roun for the copy button! Demo:
π https://www.youtube.com/watch?v=2cxSP90gj8c [Vappu is May Day]
Just released! ππππ
termcolor 3.1.0
Add true colour, cache system lookups
https://github.com/termcolor/termcolor/releases/tag/3.1.0
em-keyboard 5.1.0
Add Emoji 16.0: π«© π« πͺΎ π« πͺ πͺ π« π¨πΆ
https://github.com/hugovk/em-keyboard/releases/tag/v5.1.0
Humanize 4.12.3
Fix regression in naturalsize, improve French translation
https://github.com/python-humanize/humanize/releases/tag/4.12.3
Python Docs Theme 2025.4.1
Fix copy button with multiple tracebacks
https://github.com/python/python-docs-theme/releases/tag/2025.4.1
#Python #release #termcolor #humanize #Sphinx #theme #EmKeyboard #PythonDocsTheme
Just released: Python 3.14.0 beta 1! ππ
π₯§ Deferred type annotation evaluation!
π₯§ T-strings!
π₯§ Zstandard!
π₯§ Syntax highlighting in the REPL!
π₯§ Colour in unittest, argparse, json and calendar CLIs!
π₯§ UUID v6-8!
π₯§ And much more!
https://discuss.python.org/t/python-3-14-0-beta-1-is-here/91117?u=hugovk
Only one day late, welcome to the first beta! https://www.python.org/downloads/release/python-3140b1/ This is a beta preview of Python 3.14 Python 3.14 is still in development. This release, 3.14.0b1, is the first of four planned beta releases. Beta release previews are intended to give the wider community the opportunity to test new features and bug fixes and to prepare their projects to support the new feature release. We strongly encourage maintainers of third-party Python projects to te...
@hugovk Great work!
I keep passing over em-keyboard but it's installed now and I bet I can use it in some git commit work where I have some times need an emoji.
@webology Thanks! I use em-keyboard a lot, it's really handy.
Another tip I heard, if you're adding extra temporary logging when debugging, stick an emoji in there to make it stand out. And you can use `em --random` to help with this.
@hugovk "please upgrade 3.9"
[sobbing in 3.8 deployment]
@webology Just look at that slug!
python-3-14-0a7-3-13-3-3-12-10-3-11-12-3-10-17-and-3-9-22-are-now-available
@hugovk While adding it to @djangonews, that's what brought me back here to comment π€£
It's a shame these weren't digits of pi in the slug, but maybe when the 3.14.1 version drops...
@webology @djangonews All of those digits are in fact digits of Ο, just not necessarily in the right order ;)
@hugovk Nicely done π
And one more too...
π https://pythoninsider.blogspot.com/2025/01/python-3140-alpha-4-is-out.html
@webology We can also use the nicer blog.python.org URL instead of the blogspot one:
https://blog.python.org/2025/01/python-3140-alpha-4-is-out.html
I only realised this when I got edit rights! Here's an issue to set up redirection: https://github.com/python/pythondotorg/issues/2662
@hugovk That's good to know.
Speaking of, the latest news goes to the version I shared on https://www.python.org
Yet the "More" link goes to the TIL https://blog.python.org link you shared.
Describe the bug "Latest news" at https://www.python.org/ links articles to pythoninsider.blogspot.com but the "More" link goes to blog.python.org. Both should go to blog.python.org. To Reproduce G...
@SnoopJ Ha! You have to use `cal 9 1752` for that!
Python:
'The functions and classes defined in this module use an idealized calendar, the current Gregorian calendar extended indefinitely in both directions. This matches the definition of the βproleptic Gregorianβ calendar in Dershowitz and Reingoldβs book βCalendrical Calculationsβ, where itβs the base calendar for all computations. Zero and negative years are interpreted as prescribed by the ISO 8601 standard.'
@hugovk yea, on seeing the output I remembered that I have read exactly that passage before.
It's a reasonable thing to do, checking across a calendar boundary is a task sophisticated enough to be in "look, the stdlib can't help *YOU* with *THAT*" territory
@hugovk sweet! π
Admittedly I'm mostly looking forward to the "pi-thon" jokes π
@Anarcat calendar.py added by Guido in "Initial revision" on Oct 13, 1990!
https://github.com/python/cpython/commit/c636014c430620325f8d213e9ba10d925991b8d7