Simon Willison
Simon Willison
From those upgrade logs: ``` -----> Building on the Heroku-24 stack -----> Using buildpack: https://github.com/heroku/heroku-buildpack-python.git -----> Python app detected -----> Using Python version specified in runtime.txt ! ! A Python...
https://devcenter.heroku.com/articles/python-support#supported-runtimes I'm going to upgrade to: python-3.12.6
Tests failed: ModuleNotFoundError: No module named 'pkg_resources'
Two approaches I can think of trying that might work are: - publish separate wheels for each platform, with separate names - publish one large wheel that bundles the different...
It looks like this repo is using both Rust and `cibuildwheel` in a GitHub Actions workflow to build wheels across multiple operating systems: https://github.com/google/flax/blob/c1046ad08f885e3ff35e6fdec2bd0b6495e04e22/.github/workflows/flaxlib_publish.yml#L11-L33
This is the simplest example I've found of `cibuildwheel` in action: https://github.com/adamchainz/time-machine/blob/2.15.0/.github/workflows/build.yml - it produces 55 wheels: https://pypi.org/project/time-machine/#files
The tricky thing here is that plugin hooks in Pluggy don't by default tell you which plugin called them - and we need `register_permissions()` to track that. Thanks to o4-mini-high...
This other Python library does support this, but doesn't have as much development activity or usage (stars etc). https://github.com/itsrainingmani/py-ulid/blob/main/README.md#monotonic-ulids
Trying this out... ```bash llm \ -f https://raw.githubusercontent.com/mdomke/python-ulid/refs/heads/main/ulid/__init__.py \ -f https://raw.githubusercontent.com/ulid/spec/refs/heads/master/README.md \ -s 'Implement a subclass of ULID that adds monotonic generation by persisting state as to the last one...
OK, I knocked it into shape and I think this is good: ```python NANOSECS_IN_MILLISECS = 1000000 TIMESTAMP_LEN = 6 RANDOMNESS_LEN = 10 _lock: Final = threading.Lock() _last: bytes | None...