Skip to content

Commit

Permalink
Release v4.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
lonvia committed Sep 20, 2024
1 parent c36ba2d commit 3091925
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 3 deletions.
46 changes: 46 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,52 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [4.0.0] - 2024-09-20

### Added

- support for Python 3.13
- iterative processing of OSM files (see FileProcessor)
- new `flush()` callback for handlers
- FileBuffer for reading from a Python buffer instead of a file
- bit operators for entity bit enum
- filter mode for handlers (return False to stop processing)
- various C++-implementations of filters (for tags, keys, ids, etc.)
- convenience functions to determine object types
- binary wheels for MAcOS and Intel ARM architecture
- haversine functions for two point
- direct access to lat/lon for nodes
- expose osmium's IdSet
- new IdTracker for efficient tracking of dependent objects
- new writers for adding forward and backward references to output
- new parameter for server file type for pyosmium_get_updates
- new filter to add `__geo_interface__` attribute

### Fixed

- consistently use namespaces everywhere
- deprecation warnings around utc_now (thanks @mtmail)

### Changed

- SimpleHandler is now a Python class
- make NodeLocationForWays a generic BaseHandler
- `apply()` and MergeInputReader can take an arbitrary number of handlers
- accept Python class as handler, no inheritance from SimpleHandler necessary
- new minimum requirements: pybind 2.7, Python 3.7, C++17 compatible compiler, cmake 3.8
- AreaManager is now part of the Python interface
- consistently allow str, Path, File and FileBuffer, where OSM files are expected
- objects stay alive through handler chain allowing to carry over extra attributes
- switch SimpleWriter to use keyword arguments
- make Reader and SimpleWriter context managers
- new overwrite parameter for writers
- remove GIL release, only slows down processing
- move documentation of C++ interface into pyi files
- complete rewrite of documentation using mkdocs
- update pybind to 2.13.6
- use maximum parallelization when building (thanks @Mathiasdm)
- move build configuration to pyproject.toml as far as possible

## [3.7.0] - 2023-11-19

### Added
Expand Down
6 changes: 3 additions & 3 deletions src/osmium/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
#
# This file is part of pyosmium. (https://osmcode.org/pyosmium/)
#
# Copyright (C) 2023 Sarah Hoffmann <lonvia@denofr.de> and others.
# Copyright (C) 2024 Sarah Hoffmann <lonvia@denofr.de> and others.
# For a full list of authors see the git log.
"""
Version information.
"""

# the major version
pyosmium_major = '3.7'
pyosmium_major = '4.0'
# current release (Pip version)
pyosmium_release = '3.7.0'
pyosmium_release = '4.0.0'

# libosmium version shipped with the Pip release
libosmium_version = '2.20.0'
Expand Down

0 comments on commit 3091925

Please sign in to comment.