Found 98 bookmarks
Custom sorting
Why (Python) type hinting sucks
Why (Python) type hinting sucks
I don’t agree with the post - type hinting is awesome in my experience - but it’s a cleverly-crafted argument and there’s some interesting debate in the comments.
·reddit.com·
Why (Python) type hinting sucks
My User Experience Porting Off setup.py
My User Experience Porting Off setup.py
There seems to be a lot of confusion around setup.py and friends; and while I’ve seen pushback against this post (mostly sniffy gatekeeper stuff rather than helpful feedback), it’s a worthwhile read if only because the confusion is real.
·gregoryszorc.com·
My User Experience Porting Off setup.py
Terminal Emulators Battle Royale – Unicode Edition!
Terminal Emulators Battle Royale – Unicode Edition!

It turns out that Unicode support in Terminals is a lot more difficult than it first appears. A quick overview of special support for Unicode characters in Terminals:

  • "Wide" or "Fullwidth" characters, particularly for East Asian languages and emojis, are codepoints that occupy two cells in a terminal instead of one.
  • "Zero" width combining characters used in languages such as Arabic, Hebrew, or Hindi do not occupy any cells themselves; instead, they modify the previous character.
  • "Zero Width Joiner" (ZWJ U+200D) reduces and combines many codepoints into a single emoji. This is similar to combining, but encoded in a completely different way.
  • "Variation Selector-16" (VS-16 U+FE0F) is a special character that, for specific "Narrow" emojis consuming one cell, causes them to become "Wide", consuming two cells.
·jeffquast.com·
Terminal Emulators Battle Royale – Unicode Edition!
Packing Python Projects
Packing Python Projects

This tutorial walks you through how to package a simple Python project. It will show you how to add the necessary files and structure to create the package, how to build the package, and how to upload it to the Python Package Index (PyPI).

·packaging.python.org·
Packing Python Projects
How We Executed A Critical Supply Chain Attack On Pytorch
How We Executed A Critical Supply Chain Attack On Pytorch

"Four months ago, Adnan Khan and I exploited a critical CI/CD vulnerability in PyTorch, one of the world’s leading ML platforms. Used by titans like Google, Meta, Boeing, and Lockheed Martin, PyTorch is a major target for hackers and nation-states alike.

Thankfully, we exploited this vulnerability before the bad guys.

Here is how we did it."

·johnstawinski.com·
How We Executed A Critical Supply Chain Attack On Pytorch
How to improve Python packaging, or why fourteen tools are at least twelve too many
How to improve Python packaging, or why fourteen tools are at least twelve too many
"Join me on a journey through packaging in Python and elsewhere. We’ll start by describing the classic packaging stack (involving setuptools and friends), the scientific stack (with conda), and some of the modern/alternate tools, such as Pipenv, Poetry, Hatch, or PDM. We’ll also look at some examples of packaging and dependency-related workflows seen elsewhere (Node.js and .NET). We’ll also take a glimpse at a possible future (with a venv-less workflow with PDM), and see if the PyPA agrees with the vision and insights of eight thousand users."
·chriswarrick.com·
How to improve Python packaging, or why fourteen tools are at least twelve too many
(How to Write a (Lisp) Interpreter (in Python))
(How to Write a (Lisp) Interpreter (in Python))
This page has two purposes: to describe how to implement computer language interpreters in general, and in particular to build an interpreter for most of the Scheme dialect of Lisp using Python 3 as the implementation language. I call my language and interpreter Lispy (lis.py). Years ago, I showed how to write a semi-practical Scheme interpreter Java and in in Common Lisp). This time around the goal is to demonstrate, as concisely and simply as possible, what Alan Kay called "Maxwell's Equations of Software."
·norvig.com·
(How to Write a (Lisp) Interpreter (in Python))
A Retrospective on Requests
A Retrospective on Requests

As per the title: a retrospective of requests.

Possibly killer quote: "After receiving our first security disclosure, I was told that Requests wasn't a serious project but instead one person's art project and thus we shouldn't fix the vulnerability. This was despite the project being touted as being used by multiple international government agencies, political campaigns, and boasting about it's #1 download spot on PyPI. So when I say it might be artful, I'm trying to take a neutral stance on what is art and what isn't art and whether the internals of Requests are actually beautiful art."

·blog.ian.stapletoncordas.co·
A Retrospective on Requests
Boto3 1.34.129 documentation
Boto3 1.34.129 documentation
"You use the AWS SDK for Python (Boto3) to create, configure, and manage AWS services, such as Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3). The SDK provides an object-oriented API as well as low-level access to AWS services."
·boto3.amazonaws.com·
Boto3 1.34.129 documentation