Version 4.1.0
The build process for pyosmium changes slightly with this release. If you are installing via pip, things keep working as before. When installing from source be aware of the following: pybind11 is not longer packaged but will be installed as part of the build from the pypi packages. If you were using on of the *_PREFIX variables to set a custom location for libosmium, protozero or boost, you need to switch to the CMake standard way for custom locations, namly Libosmium_ROOT, Protozero_ROOT or Boost_ROOT. Compiled libraries will no longer be put into the build directory. See README for how to build and run tests during development.
Added
- introduced flake8 linting for Python sources and tests
- experimental support for free-threaded Python
- support for Python 3.14
- binary wheels for Windows ARM architecture
Fixed
- various errors in the documentation (thanks @ltog, @amandasaurus, @uniform641)
- make timestamp conversions thread-safe
Changed
- updated to pybind11 3.0 (drops support for Python 3.7 and CMake < 3.15)
- replace setuptools build system with scikit-build-core
- create version.h on the fly during build
(now reflects the library versions actually used for building pyosmium) - example code modernized (thanks @jake-low)