## Release v2.26.9 (2026-05-10) ### Features & Improvements - Support `exclude-newer` in `pyproject.toml` in the `[tool.pdm.resolution]` table ([#3776](https://github.com/pdm-project/pdm/issues/3776)) ### Bug Fixes - Preserve pylock package markers when refreshing lockfile hashes. ([#3773](https://github.com/pdm-project/pdm/issues/3773)) ## Release v2.26.8 (2026-04-21) ### Features & Improvements - `pdm lock --exclude-newer` now accepts relative durations in the format `N{d|h|w}`, such as `7d`, `12h`, and `3w`, in addition to absolute UTC dates and timestamps. ([#3760](https://github.com/pdm-project/pdm/issues/3760)) ### Bug Fixes - Fixed `pdm add --frozen-lockfile --no-sync` to skip dependency resolution and update only `pyproject.toml` without attempting to write the lockfile. ([#3755](https://github.com/pdm-project/pdm/issues/3755)) - Fix `[tool.pdm.options]` being loaded from the current working directory instead of the target project when `-p`/`--project` is used. ([#3756](https://github.com/pdm-project/pdm/issues/3756)) - Put `make_file_executable` into `pdm.utils` to replace the method of the same name in `installer`. To fix a breakage introduced by `installer` v1. ([#3764](https://github.com/pdm-project/pdm/issues/3764)) - Fix `pdm init