macos_support #82

Merged
goodboy merged 5 commits from macos_support into main 2026-03-11 19:50:18 +00:00

Replaces #78 with a reduced history providing only the minimal patch set to avoid crashes/make-things-baseline-work on macos.


Still to check before landing

Replaces #78 with a reduced history providing only the minimal patch set to avoid crashes/make-things-baseline-work on macos. --- ### Still to check before landing - [x] verify everything still works on linux. * just did it and seems fine? - [x] UI looks right on an actual mac (thx for the help @dnks!) - [x] (NO) do we actually need the symcache toml cleaning commit? * https://pikers.dev/pikers/piker/commit/61bef6d5f525ec2e2b301038798dd99a15f0f7bb * [x] do a crash test console check on the mini. * no we don't, it's removed in latest history, see the commit on a new branch, https://pikers.dev/pikers/piker/src/branch/symcache_null_cleaner - [x] is there anything in `.data._sharedmem.py` that we're missing but which is required?? * seems like **no??** bc everything is running fine but we don't actually have the shm-file-name shortening code in tree lol?? => ah yeah it's precisely bc we already handle it in `.tsp._history`, https://pikers.dev/pikers/piker/pulls/82/files#issuecomment-1401 * [x] rebase and diff the patch from #64, - diff: https://pikers.dev/pikers/piker/pulls/64/files#diff-e16587f755c8723114b7cbf1fbda8bbe69a7bc56 - commit-hash: 3ae41d6da4ac1c59792a58085119bd333b6f9020 - we **don't need it** as mentioned [here]( * [x] the plan is to port piker to `tractor.ipc._shm` (finally) and pretty sure i patched in those change via the `macos_support` recently landed in `tractor`'s, https://github.com/goodboy/tractor/pull/406 - [x] follow up issue for this, https://pikers.dev/pikers/piker/issues/83
goodboy added 4 commits 2026-03-11 14:59:49 +00:00
8b3365a249 Check for a `.hist` suffix in shm file names
That is, in-mem history buffer files should have a `.hist` suffix (which
was added back instead of the weird `.h` change from the rebased
8352d89e, initially providing the macos support fix).

I'm pretty sure we can afford the 3 extra chars if we're already
truncating to a max 16 char `key: str = f'{uuid[:8]}_{fqme_hash}'`, per
@goodboy's edit from the original key-truncation approach in the
original original @dnks patch: 75d8582b).
52e65dbe0d Use `md5` hashed shm keys for macOS compat
Shorten SHM buffer key names to fit Darwin's 31
char filename limit by hashing the `fqme`/content
portion with `md5` and truncating to 8 hex chars.

Deats,
- `.fsp._api`: replace `piker.{actor}[{uuid}].{sym}`
  format with `{uuid[:8]}_{hash}.fsp`
- `.tsp._history`: add `platform.system()` check to
  conditionally shorten `.hist`/`.rt` keys on Darwin
  while keeping the full key format on Linux

(this commit msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code

NOTE that this patch was orig by @dnks and broken out from a larger
commit which added unnecessary/out-of-scope changes we didn't end up
requiring.
61bef6d5f5 Strip `None` values from symcache dict before TOML write
(this commit msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code

Note that (again) this patch was orig by @dnks and broken out from
a larger commit which added unnecessary/out-of-scope changes we didn't
end up requiring.
goodboy added 1 commit 2026-03-11 16:02:35 +00:00
45f688cbe6 Save and restore window geometry via `QSettings`
Seems to be required to get certain widgets to size correctly on macos
like the order-mode "health bar" among other types of labels?

(this commit msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code

Originally from @dnks with a weird(er) commit msg XP
goodboy added 1 commit 2026-03-11 16:13:18 +00:00
goodboy force-pushed macos_support from 41f9e45af9 to a3ed73a40d 2026-03-11 18:37:04 +00:00 Compare
goodboy force-pushed macos_support from a3ed73a40d to d404568ff3 2026-03-11 19:11:35 +00:00 Compare
goodboy reviewed 2026-03-11 19:38:43 +00:00
@ -1380,13 +1381,20 @@ async def manage_history(
service: str = name.rstrip(f'.{mod.name}')
fqme: str = mkt.get_fqme(delim_char='')
key: str = f'piker.{service}[{uuid[:16]}].{fqme}'
Poster
Owner

Ahh yeah we don’t need the stuff from @dnksother patch in #64 bc we already handle key/file-name shortening right here 😎

Ahh yeah we don't need the stuff from @dnks' [other patch](https://pikers.dev/pikers/piker/pulls/64/files#diff-e16587f755c8723114b7cbf1fbda8bbe69a7bc56) in #64 bc we already handle key/file-name shortening right here 😎
goodboy requested review from dnks 2026-03-11 19:43:16 +00:00
goodboy merged commit 7f62e75111 into main 2026-03-11 19:50:18 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: pikers/piker#82
There is no content yet.