Skip to content

Commit 3091925

Browse files
committed
Release v4.0.0
1 parent c36ba2d commit 3091925

File tree

2 files changed

+49
-3
lines changed

2 files changed

+49
-3
lines changed

CHANGELOG.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,52 @@
44
All notable changes to this project will be documented in this file.
55
This project adheres to [Semantic Versioning](http://semver.org/).
66

7+
## [4.0.0] - 2024-09-20
8+
9+
### Added
10+
11+
- support for Python 3.13
12+
- iterative processing of OSM files (see FileProcessor)
13+
- new `flush()` callback for handlers
14+
- FileBuffer for reading from a Python buffer instead of a file
15+
- bit operators for entity bit enum
16+
- filter mode for handlers (return False to stop processing)
17+
- various C++-implementations of filters (for tags, keys, ids, etc.)
18+
- convenience functions to determine object types
19+
- binary wheels for MAcOS and Intel ARM architecture
20+
- haversine functions for two point
21+
- direct access to lat/lon for nodes
22+
- expose osmium's IdSet
23+
- new IdTracker for efficient tracking of dependent objects
24+
- new writers for adding forward and backward references to output
25+
- new parameter for server file type for pyosmium_get_updates
26+
- new filter to add `__geo_interface__` attribute
27+
28+
### Fixed
29+
30+
- consistently use namespaces everywhere
31+
- deprecation warnings around utc_now (thanks @mtmail)
32+
33+
### Changed
34+
35+
- SimpleHandler is now a Python class
36+
- make NodeLocationForWays a generic BaseHandler
37+
- `apply()` and MergeInputReader can take an arbitrary number of handlers
38+
- accept Python class as handler, no inheritance from SimpleHandler necessary
39+
- new minimum requirements: pybind 2.7, Python 3.7, C++17 compatible compiler, cmake 3.8
40+
- AreaManager is now part of the Python interface
41+
- consistently allow str, Path, File and FileBuffer, where OSM files are expected
42+
- objects stay alive through handler chain allowing to carry over extra attributes
43+
- switch SimpleWriter to use keyword arguments
44+
- make Reader and SimpleWriter context managers
45+
- new overwrite parameter for writers
46+
- remove GIL release, only slows down processing
47+
- move documentation of C++ interface into pyi files
48+
- complete rewrite of documentation using mkdocs
49+
- update pybind to 2.13.6
50+
- use maximum parallelization when building (thanks @Mathiasdm)
51+
- move build configuration to pyproject.toml as far as possible
52+
753
## [3.7.0] - 2023-11-19
854

955
### Added

src/osmium/version.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
#
33
# This file is part of pyosmium. (https://osmcode.org/pyosmium/)
44
#
5-
# Copyright (C) 2023 Sarah Hoffmann <[email protected]> and others.
5+
# Copyright (C) 2024 Sarah Hoffmann <[email protected]> and others.
66
# For a full list of authors see the git log.
77
"""
88
Version information.
99
"""
1010

1111
# the major version
12-
pyosmium_major = '3.7'
12+
pyosmium_major = '4.0'
1313
# current release (Pip version)
14-
pyosmium_release = '3.7.0'
14+
pyosmium_release = '4.0.0'
1515

1616
# libosmium version shipped with the Pip release
1717
libosmium_version = '2.20.0'

0 commit comments

Comments
 (0)