Skip to content

Refactor: Update CaseAwarePath with stdlib-only resolution and legacy-compatible API - #135

Merged
ProjectSynchro merged 5 commits into
OpenKotOR:masterfrom
ProjectSynchro:linux-speedup
Feb 7, 2026
Merged

Refactor: Update CaseAwarePath with stdlib-only resolution and legacy-compatible API#135
ProjectSynchro merged 5 commits into
OpenKotOR:masterfrom
ProjectSynchro:linux-speedup

Conversation

@ProjectSynchro

Copy link
Copy Markdown
Contributor

I removed the FUSE-based case-handling path flow and consolidated on a standard-library implementation that resolves path segments case-insensitively on POSIX. This reduces environment-specific dependencies and improves reliability/performance on the main path operations.

Added some Python-version-aware handling for pathlib internals (including pre-3.12 compatibility), reintroduced bounded directory-content caching, and cached case-match scoring to improve repeated lookup performance.

Registry-based install discovery is implemented and retained (including Steam/GOG/LucasArts keys and Amazon K1 lookup via HKEY_USERS).

This greatly speeds up and fixes the implementation on Linux. Caching makes this pretty snappy.

…cy-compatible API

Removed the FUSE-based case-handling path flow and consolidated on a standard-library implementation that resolves path segments case-insensitively on POSIX. This reduces environment-specific dependencies and improves reliability/performance on the main path operations.

Added Python-version-aware handling for `pathlib` internals (including pre-3.12 compatibility), reintroduced bounded directory-content caching, and cached case-match scoring to improve repeated lookup performance.

Registry-based install discovery is implemented and retained (including Steam/GOG/LucasArts keys and Amazon K1 lookup via `HKEY_USERS`).
Only runs on non-Windows systems.

should return true.
This stops us from clashing with a qt method name (resetInternalData) and fixes model resetting

Additionally wraps item.data() as a string where needed.
@ProjectSynchro
ProjectSynchro merged commit 1a32676 into OpenKotOR:master Feb 7, 2026
6 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant