Skip to content

fix(macos): restore share blocks and handle Mac-compressed ZIPs - #43

Merged
theincrediblewwz merged 4 commits into
mainfrom
codex/macos-zip-import-block-structure
Sep 8, 2026
Merged

fix(macos): restore share blocks and handle Mac-compressed ZIPs#43
theincrediblewwz merged 4 commits into
mainfrom
codex/macos-zip-import-block-structure

Conversation

@theincrediblewwz

@theincrediblewwz theincrediblewwz commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Problem and behavior

Mac share import could lose Windows block boundaries and fail on folders compressed by macOS when UTF-8 filenames lacked the ZIP language flag. Import now restores top-level exported block IDs, source types, order and separate Markdown files; Mac ZIP export retains that metadata. Legacy unmarked Markdown remains one block, and merged continuation groups without internal offsets remain intact with a notice.

The native picker now opens asynchronously after Notebooks dismissal, attaches to the initiating workspace through a stable window anchor, and filters folders/ZIP/Markdown without mixed inferred UTIs. Main-window ZIP/folder drops also use the share importer. ZIP filename decoding honors Unicode path metadata, accepts strictly valid UTF-8 without bit 11, and retains legacy CP437 fallback plus all existing path/size/CRC checks.

Validation

  • Core: 425 passed, 2 skipped. One cancellation test timed out on an earlier concurrent run; its 31-test file and the subsequent complete suite passed without changing the test.
  • Native contract 99 and UI contract 205 checks passed.
  • Real native preview regression passed, including window-anchor lifecycle, Windows block IDs, image rendering and ZIP reimport.
  • Local native release build and package contract passed.
  • In an isolated GUI, Windows-format and actual macOS ditto ZIP fixtures both restore three blocks, the original image and rendered math. ZIPs were selected with the keyboard.
  • Public source gate passed. No Windows or Android application sources changed.

User acceptance and release

On 2026-09-08 the user confirmed foreground file selection and import now work, and requested the ZIP plus GitHub release update. Automated keyboard-based fixture checks and this human mouse acceptance are recorded separately. README and release documentation now identify macOS 0.3.7. Publish through the normal Mac release workflow after merging; Windows/Android release assets remain unchanged.

@theincrediblewwz
theincrediblewwz marked this pull request as ready for review September 8, 2026 11:11
@theincrediblewwz
theincrediblewwz merged commit 2bf4ddf into main Sep 8, 2026
4 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