graphics/ruby-mini-magick: update to 5.3.2
5.3.2 (2026-07-14)
* Restored instantiating legacy MiniMagick::Tool::* classes for backwards
compatibility, which got broken in 5.0.
* Reintroduced manual timeouts instead of relying on $MAGICK_TIME_LIMIT,
which wasn't reliably enforcing the timeout (and isn't compatible with
GraphicsMagick).
py-zensical: update to 0.0.51.
This version improves cached rebuilds by persisting objects.inv
and autorefs data, fixes stale builds after removing files, and
upgrades soupsieve to address vulnerabilities.
gcc15: updated to 15.3
15.3
This release is a bug-fix release, containing fixes for regressions in
GCC 15.2 relative to previous releases of GCC.
PkgSrc:
Allow building on Darwin/aarch64.
py-tomlkit: update to 0.15.1.
## [0.15.1] - 2026-07-17
### Changed
- Speed up membership tests (`key in ...`) on `Container`, `Table` and `InlineTable` with native `__contains__` implementations, avoiding the inherited `MutableMapping` round-trip through `__getitem__` (which resolves the value and builds an exception on every absent key). ([#483](https://github.com/python-poetry/tomlkit/issues/483))
- Speed up parsing by making `Source` index-based: it now tracks an integer position over the input string instead of materializing a list of `(index, char)` tuples up front, so construction is O(1) and state save/restore no longer copies an iterator. ([#489](https://github.com/python-poetry/tomlkit/pull/489))
- Speed up parsing by scanning character runs in bulk: `Source.advance_while`/`advance_until` consume a whole run of whitespace, bare-key or number characters in a single pass over the input string instead of one `inc()` call per character. ([#490](https://github.com/python-poetry/tomlkit/pull/490))
- Speed up parsing of single-line strings by bulk-appending the run of ordinary characters up to the next delimiter, backslash or control character in one pass, instead of one character at a time. ([#491](https://github.com/python-poetry/tomlkit/pull/491))
- Speed up parsing by removing the internal `TOMLChar` wrapper: the parser now reads plain `str` characters from `Source` and detects end-of-input positionally, avoiding a per-character object construction and method dispatch. ([#492](https://github.com/python-poetry/tomlkit/pull/492))
- Speed up parsing by comparing `StringType` members by identity (`is`) instead of building a set on every `is_basic`/`is_literal`/`is_singleline`/`is_multiline` call, avoiding millions of enum hashes while parsing. ([#502](https://github.com/python-poetry/tomlkit/pull/502))
- Speed up merging super tables by merging in place instead of deep-copying the growing target on every merge, turning the parse of documents with many subtables under a shared super table (e.g. consecutive `[a.b.c]` / `[a.b.d]` headers) from O(n²) into O(n). ([#503](https://github.com/python-poetry/tomlkit/pull/503))
- Speed up membership tests (`key in ...`) on out-of-order tables with a native `OutOfOrderTableProxy.__contains__`, completing [#483](https://github.com/python-poetry/tomlkit/issues/483) for the last mapping type that still inherited the slow `MutableMapping` mixin (which resolves the value and builds an exception on every absent key). ([#515](https://github.com/python-poetry/tomlkit/pull/515))
- Speed up parsing documents with many dotted keys or table headers sharing a prefix by validating out-of-order tables incrementally: each new fragment is merged into a cached validation container once, instead of re-merging (and deep-copying) every earlier fragment on each append, turning a super-cubic worst case into linear time (80 shared-prefix dotted keys: ~8 s → ~10 ms). ([#479](https://github.com/python-poetry/tomlkit/issues/479))
- Speed up parsing of arrays that close right after a value (e.g. the `files = [...]` blocks that dominate lock files): the parser no longer attempts to read a value while sitting on the closing `]`, which previously built an `UnexpectedCharError` just to discard it — and constructing that exception eagerly computes a line/column by scanning the whole document, making it O(document size) per such array. ([#517](https://github.com/python-poetry/tomlkit/pull/517))
- Speed up parsing of multiline strings by bulk-appending the run of ordinary characters — across raw line feeds and tabs — up to the next delimiter, backslash, carriage return or control character, instead of one character at a time. This extends to `"""`/`'''` bodies the single-line fast path added in [#491](https://github.com/python-poetry/tomlkit/pull/491); a `\r` still stops the scan so `\r\n` stays validated and byte-for-byte preserved. ([#518](https://github.com/python-poetry/tomlkit/pull/518))
- Speed up `unwrap()` (converting a parsed document to a plain `dict`) by resolving each key directly from the container's key map instead of iterating the inherited `MutableMapping` view, which rebuilt a `SingleKey` from the bare string for every key just to re-look-up the value. Out-of-order tables still resolve through their proxy, so their validation is unchanged. ([#521](https://github.com/python-poetry/tomlkit/pull/521))
- Speed up rendering (`as_string()` / `dumps()`) of inline tables with many keys by precomputing the last-key and last-deleted-element indices in a single pass, instead of rescanning the remaining body on every separator comma — turning an O(n²) render into O(n). ([#525](https://github.com/python-poetry/tomlkit/pull/525))
[26 lines not shown]
py-platformdirs: update to 4.10.1.
🐛 fix(windows): stop leaking memory on repeated folder lookups by @gaborbernat in #507
🚀 ci(release): towncrier changelog + publish on tag push by @gaborbernat in #509
📝 docs(changelog): rebuild against release history by @gaborbernat in #510
py-filelock: update to 3.31.0.
3.31.0
✨ feat(platform): support Termux/Android by @gaborbernat in #678
3.30.3
Keep both tables of contents on screen at any browser font size by @gaborbernat in #673
📝 docs(mermaid): follow the light and dark theme toggle by @gaborbernat in #674
asyncio: scope the reentrant-deadlock registry to the owning task by @xt-yin in #676
3.30.2
Document every lock type, and stop evicting a marker we cannot read by @gaborbernat in #672
3.30.1
📝 docs: separate changelog releases with a blank line by @gaborbernat in #668
[43 lines not shown]