github m3trik/pythontk v0.9.31
pythontk v0.9.31

5 hours ago
  • 2026-08-23 — FileNaming gains a base-name mode: base_names=True acts on the map-suffix-free base of a texture file name (file_utils/file_naming.py). Every operation already worked on the stem, never the extension; base_names narrows that one step further, splitting each stem into (base, tail) at its texture-map suffix (_Normal, -basecolor, rockAO) plus any UDIM tile, running the operation on the base and re-attaching the tail. find, rename, set_case and strip_chars all take it. That makes one rename carry a whole texture set — rock_Normal, rock_AO and rock_ORM.1001 share the base rock — instead of leaving every map with a name that no longer identifies it, and it stops a trailing strip_chars from eating the suffix rather than the name. The split itself is a new registry primitive, MapRegistry.split_map_suffix — it composes split_tile_token with get_suffix_strip_pattern in the one order that works (the tile hides the suffix if it is not taken off first), and it is placed there rather than on FileNaming because that pattern's own docstring records two hand-rolled copies of this sequence having drifted already; a third raw consumer is the next chance to drift. ImgUtils.get_base_texture_name now takes the primitive too, dropping its copy of the plumbing, and a test asserts the two agree. A stem with no registered suffix splits to (stem, ""), so a mixed directory is safe. Default is off — existing callers are byte-for-byte unaffected.

  • 2026-08-23 — CI only: the post-publish bump-dev bot is retired and publish.yml no longer dispatches it. m3trik/push.ps1 now steps the release version from what PyPI has and makes a single Release X.Y.Z commit, so the placeholder bump on dev was dead weight — and the reason every release of this package consumed two or three version numbers (PyPI: 0.9.26 → 0.9.28 → 0.9.30). Invariant after a release: dev == main. No code change; nothing publishes from this delta.

Don't miss a new pythontk release

NewReleases is sending notifications on new releases.