[Git][debian-gis-team/pyosmium][trixie-backports] 8 commits: Enable build profile CI job.
Bas Couwenberg (@sebastic)
gitlab at salsa.debian.org
Tue Apr 7 15:56:17 BST 2026
Bas Couwenberg pushed to branch trixie-backports at Debian GIS Project / pyosmium
Commits:
3dfa436a by Bas Couwenberg at 2026-03-26T16:01:39+01:00
Enable build profile CI job.
- - - - -
d6e45e11 by Bas Couwenberg at 2026-04-02T05:22:48+02:00
New upstream version 4.3.1
- - - - -
c14b88f9 by Bas Couwenberg at 2026-04-02T05:22:54+02:00
Update upstream source from tag 'upstream/4.3.1'
Update to upstream version '4.3.1'
with Debian dir 7da71401c32234acc19f4946e01b623a1cab7aea
- - - - -
d57fc0bb by Bas Couwenberg at 2026-04-02T05:23:08+02:00
New upstream release.
- - - - -
d4b5d048 by Bas Couwenberg at 2026-04-02T05:23:56+02:00
Set distribution to unstable.
- - - - -
c739f626 by Bas Couwenberg at 2026-04-04T12:58:58+02:00
Merge tag 'debian/4.3.1-1' into trixie-backports
releasing package pyosmium version 4.3.1-1
- - - - -
960f4267 by Bas Couwenberg at 2026-04-04T12:59:03+02:00
Rebuild for trixie-backports.
- - - - -
f63390e4 by Bas Couwenberg at 2026-04-07T16:49:28+02:00
Require libosmium2-dev 2.23.1 from backports for replication fix.
- - - - -
12 changed files:
- .github/workflows/build_wheels.yml
- .github/workflows/ci.yml
- CHANGELOG.md
- CMakeLists.txt
- README.md
- debian/.gitlab-ci.yml
- debian/changelog
- debian/control
- docs/man/pyosmium-get-changes.1
- docs/man/pyosmium-up-to-date.1
- pyproject.toml
- test/test_pyosmium_up-to-date.py
Changes:
=====================================
.github/workflows/build_wheels.yml
=====================================
@@ -21,9 +21,9 @@ jobs:
vcpkg: 'C:/vcpkg/installed/arm64-windows'
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- - uses: actions/setup-python at v5
+ - uses: actions/setup-python at v6
with:
python-version: '3.14'
@@ -50,7 +50,7 @@ jobs:
CIBW_ENVIRONMENT_WINDOWS: 'CMAKE_TOOLCHAIN_FILE="C:/vcpkg/scripts/buildsystems/vcpkg.cmake"'
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: 'pipx run delvewheel repair --add-path ${{ matrix.vcpkg }}/bin/ --add-path ${{ matrix.vcpkg }}/debug/bin -w {dest_dir} {wheel}'
- - uses: actions/upload-artifact at v4
+ - uses: actions/upload-artifact at v7
with:
name: pyosmium-wheels-${{ matrix.os }}
path: ./wheelhouse/*.whl
=====================================
.github/workflows/ci.yml
=====================================
@@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-24.04
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Install packages
run: |
@@ -24,7 +24,7 @@ jobs:
run: mypy src
- name: Set up Python 3.8
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: 3.8
@@ -35,7 +35,7 @@ jobs:
shell: bash
- name: Set up Python 3.9
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: 3.9
@@ -46,7 +46,7 @@ jobs:
shell: bash
- name: Set up Python 3.10
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.10"
@@ -57,7 +57,7 @@ jobs:
shell: bash
- name: Set up Python 3.11
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.11"
@@ -68,7 +68,7 @@ jobs:
shell: bash
- name: Set up Python 3.12
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.12"
@@ -79,7 +79,7 @@ jobs:
shell: bash
- name: Set up Python 3.13
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.13"
@@ -90,7 +90,7 @@ jobs:
shell: bash
- name: Set up Python 3.14
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.14"
allow-prereleases: true
@@ -102,7 +102,7 @@ jobs:
shell: bash
- name: Upload Artifact
- uses: actions/upload-artifact at v4
+ uses: actions/upload-artifact at v7
with:
name: pyosmium-linux-x64-dist
path: dist
@@ -111,7 +111,7 @@ jobs:
runs-on: ubuntu-24.04
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Install packages
run: |
@@ -122,7 +122,7 @@ jobs:
pipx install flake8
- name: Set up Python 3.13t
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.13t"
@@ -133,7 +133,7 @@ jobs:
shell: bash
- name: Set up Python 3.14t
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.14t"
allow-prereleases: true
@@ -145,7 +145,7 @@ jobs:
shell: bash
- name: Upload Artifact
- uses: actions/upload-artifact at v4
+ uses: actions/upload-artifact at v7
with:
name: pyosmium-linux-x64-dist-t
path: dist
@@ -161,15 +161,15 @@ jobs:
python-version: [3.8, 3.9, "3.10", "3.11", "3.12", "3.13"]
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- - uses: actions/download-artifact at v4
+ - uses: actions/download-artifact at v7
with:
name: pyosmium-linux-x64-dist
@@ -197,15 +197,15 @@ jobs:
needs: build-default
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Set up Python 3.14
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: 3.14
allow-prereleases: true
- - uses: actions/download-artifact at v4
+ - uses: actions/download-artifact at v8
with:
name: pyosmium-linux-x64-dist
@@ -237,15 +237,15 @@ jobs:
python-version: ["3.13t", "3.14t"]
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- - uses: actions/download-artifact at v4
+ - uses: actions/download-artifact at v8
with:
name: pyosmium-linux-x64-dist-t
@@ -316,7 +316,7 @@ jobs:
CXX: ${{ matrix.cxx }}
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Clean up build environment
run: |
@@ -337,7 +337,7 @@ jobs:
shell: bash
if: ${{ matrix.flavour == 'macos' }}
- - uses: actions/setup-python at v5
+ - uses: actions/setup-python at v6
with:
python-version: "${{ matrix.python }}"
allow-prereleases: true
@@ -394,9 +394,9 @@ jobs:
VCPKG_DEFAULT_BINARY_CACHE: C:/vcpkg_binary_cache
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- - uses: actions/cache at v4
+ - uses: actions/cache at v5
with:
path: |
C:/vcpkg_binary_cache
@@ -411,7 +411,7 @@ jobs:
shell: bash
- name: Set up Python 3.8
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: 3.8
@@ -424,7 +424,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.9
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: 3.9
@@ -437,7 +437,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.10
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.10"
@@ -450,7 +450,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.11
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.11"
@@ -463,7 +463,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.12
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.12"
@@ -476,7 +476,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.13
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.13"
@@ -489,7 +489,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.14
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.14"
allow-prereleases: true
@@ -508,7 +508,7 @@ jobs:
delvewheel repair --add-path C:/vcpkg/installed/x64-windows/bin/ --add-path C:/vcpkg/installed/x64-windows/debug/bin dist/*.whl
- name: 'Upload Artifact'
- uses: actions/upload-artifact at v4
+ uses: actions/upload-artifact at v7
with:
name: pyosmium-win64-dist
path: wheelhouse
@@ -520,9 +520,9 @@ jobs:
VCPKG_DEFAULT_BINARY_CACHE: C:/vcpkg_binary_cache
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- - uses: actions/cache at v4
+ - uses: actions/cache at v5
with:
path: |
C:/vcpkg_binary_cache
@@ -538,7 +538,7 @@ jobs:
shell: bash
- name: Set up Python 3.13t
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.13t"
@@ -551,7 +551,7 @@ jobs:
CMAKE_TOOLCHAIN_FILE: C:/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Set up Python 3.14t
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: "3.14t"
allow-prereleases: true
@@ -570,7 +570,7 @@ jobs:
delvewheel repair --add-path C:/vcpkg/installed/x64-windows/bin/ --add-path C:/vcpkg/installed/x64-windows/debug/bin dist/*.whl
- name: 'Upload Artifact'
- uses: actions/upload-artifact at v4
+ uses: actions/upload-artifact at v7
with:
name: pyosmium-win64-dist-t
path: wheelhouse
@@ -589,15 +589,15 @@ jobs:
PYTEST_ADDOPTS: ${{ matrix.test-args }}
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- - uses: actions/download-artifact at v4
+ - uses: actions/download-artifact at v8
with:
name: pyosmium-win64-dist
@@ -647,15 +647,15 @@ jobs:
PYTEST_ADDOPTS: ${{ matrix.test-args }}
steps:
- - uses: actions/checkout at v4
+ - uses: actions/checkout at v6
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python at v5
+ uses: actions/setup-python at v6
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- - uses: actions/download-artifact at v4
+ - uses: actions/download-artifact at v8
with:
name: pyosmium-win64-dist-t
=====================================
CHANGELOG.md
=====================================
@@ -4,6 +4,18 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
+## [4.3.1] - 2026-04-01
+
+### Fixed
+
+- regression in libosmium where deletions in extract diffs are not
+ handled correctly
+
+### Changed
+
+- updated to libosmium 2.23.1
+
+
## [4.3.0] - 2026-01-31
### Added
=====================================
CMakeLists.txt
=====================================
@@ -19,7 +19,7 @@ include(FetchContent)
FetchContent_Declare(libosmium
GIT_REPOSITORY https://github.com/osmcode/libosmium
- GIT_TAG 9c49c960569c15dd09ff9eb9e9dce7f383ab6ed2 # release 2.23.0
+ GIT_TAG 97dccf105391d410701ae8bd52170dc0ee041373 # release 2.23.1
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/contrib/libosmium
SOURCE_SUBDIR cmake
GIT_SUBMODULES_RECURSE OFF)
=====================================
README.md
=====================================
@@ -38,6 +38,7 @@ command installs all required packages:
pyosmium has the following dependencies:
* [libosmium](https://github.com/osmcode/libosmium) >= 2.16.0
+ (versions 2.21.0 to 2.23.0 have a known issue when processing extract diffs)
* [protozero](https://github.com/mapbox/protozero)
* [cmake](https://cmake.org/)
* [Pybind11](https://github.com/pybind/pybind11) >= 2.7
=====================================
debian/.gitlab-ci.yml
=====================================
@@ -6,7 +6,16 @@ variables:
RELEASE: 'trixie-backports'
SALSA_CI_DISABLE_AUTOPKGTEST_I386: 1
SALSA_CI_DISABLE_BUILD_PACKAGE_I386: 1
+ SALSA_CI_ENABLE_BUILD_PACKAGE_PROFILES: 1
SALSA_CI_ENABLE_VALIDATE_PACKAGE_CLEAN_UP: 1
debrebuild:
allow_failure: true
+
+test-build-profiles:
+ extends: .test-build-package-profiles
+ parallel:
+ matrix:
+ - BUILD_PROFILES:
+ - nocheck
+ - nodoc
=====================================
debian/changelog
=====================================
@@ -1,3 +1,16 @@
+pyosmium (4.3.1-1~bpo13+1) trixie-backports; urgency=medium
+
+ * Rebuild for trixie-backports.
+ * Require libosmium2-dev 2.23.1 from backports for replication fix.
+
+ -- Bas Couwenberg <sebastic at debian.org> Sat, 04 Apr 2026 12:59:01 +0200
+
+pyosmium (4.3.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Bas Couwenberg <sebastic at debian.org> Thu, 02 Apr 2026 05:23:42 +0200
+
pyosmium (4.3.0-1~bpo13+1) trixie-backports; urgency=medium
* Rebuild for trixie-backports.
=====================================
debian/control
=====================================
@@ -9,7 +9,7 @@ Build-Depends: architecture-is-64-bit,
dh-sequence-python3,
libbz2-dev,
libexpat1-dev,
- libosmium2-dev (>= 2.19.0),
+ libosmium2-dev (>= 2.23.1),
pybind11-dev,
pybuild-plugin-pyproject,
python3-all-dev,
=====================================
docs/man/pyosmium-get-changes.1
=====================================
@@ -1,4 +1,4 @@
-.TH PYOSMIUM\-GET\-CHANGES "1" "2026\-01\-31" "pyosmium 4.3.0" "Generated Python Manual"
+.TH PYOSMIUM\-GET\-CHANGES "1" "2026\-04\-01" "pyosmium 4.3.1" "Generated Python Manual"
.SH NAME
pyosmium\-get\-changes
.SH SYNOPSIS
=====================================
docs/man/pyosmium-up-to-date.1
=====================================
@@ -1,4 +1,4 @@
-.TH PYOSMIUM\-UP\-TO\-DATE "1" "2026\-01\-31" "pyosmium 4.3.0" "Generated Python Manual"
+.TH PYOSMIUM\-UP\-TO\-DATE "1" "2026\-04\-01" "pyosmium 4.3.1" "Generated Python Manual"
.SH NAME
pyosmium\-up\-to\-date
.SH SYNOPSIS
=====================================
pyproject.toml
=====================================
@@ -4,7 +4,7 @@ build-backend = "scikit_build_core.build"
[project]
name = "osmium"
-version = "4.3.0"
+version = "4.3.1"
description = "Python bindings for libosmium, the data processing library for OSM data"
requires-python = ">=3.8"
readme = "README.rst"
=====================================
test/test_pyosmium_up-to-date.py
=====================================
@@ -41,6 +41,23 @@ def replication_server(httpserver):
return httpserver.url_for('')
+ at pytest.fixture
+def replication_server_delete(httpserver):
+ def _state(seq):
+ seqtime = REPLICATION_BASE_TIME + dt.timedelta(hours=seq - REPLICATION_CURRENT)
+ timestamp = seqtime.strftime('%Y-%m-%dT%H\\:%M\\:%SZ')
+ return f"sequenceNumber={seq}\ntimestamp={timestamp}\n"
+
+ httpserver.no_handler_status_code = 404
+ httpserver.expect_request('/state.txt').respond_with_data(_state(REPLICATION_CURRENT))
+ for i in range(REPLICATION_BASE_SEQ, REPLICATION_CURRENT + 1):
+ httpserver.expect_request(f'/000/000/{i}.opl')\
+ .respond_with_data(f"n{i} v2 dD")
+ httpserver.expect_request(f'/000/000/{i}.state.txt').respond_with_data(_state(i))
+
+ return httpserver.url_for('')
+
+
@pytest.fixture
def runner(replication_server):
def _run(*args):
@@ -79,6 +96,18 @@ def test_simple_update_override(runner, test_data):
assert ids.relations == list(range(138, REPLICATION_CURRENT + 1))
+def test_simple_update_delete(replication_server_delete, test_data):
+ outfile = test_data("n138 v1 t2070-05-06T19:30:00Z x3 y5\nn139 v2 x3 y5\nn140 v3 x3 y5")
+
+ pyosmium_up_to_date(
+ ['--server', replication_server_delete, '--diff-type', 'opl', str(outfile)])
+
+ ids = IDCollector()
+ osmium.apply(outfile, ids)
+
+ assert ids.nodes == [140]
+
+
def test_simple_update_new_file(runner, replication_server, test_data, tmp_path):
outfile = test_data("n1 v1 t2070-05-06T19:30:00Z")
newfile = tmp_path / f"{uuid.uuid4()}.pbf"
View it on GitLab: https://salsa.debian.org/debian-gis-team/pyosmium/-/compare/4d2f03215b8fe33361c28107ba52a7b2e16f3763...f63390e45de1443e5c265afa273e5cb27e87d46f
--
View it on GitLab: https://salsa.debian.org/debian-gis-team/pyosmium/-/compare/4d2f03215b8fe33361c28107ba52a7b2e16f3763...f63390e45de1443e5c265afa273e5cb27e87d46f
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20260407/dab24978/attachment-0001.htm>
More information about the Pkg-grass-devel
mailing list