disk_kit_macos 1.2.3
disk_kit_macos: ^1.2.3 copied to clipboard
macOS platform implementation for DiskKit using native macOS APIs.
1.2.3 #
- Preserve literal AppleDouble
._companion pairs without invoking system quarantine/xattr serialization. macOScopyfilecan apply quarantine even with onlyCOPYFILE_DATA | COPYFILE_STAT, potentially rewriting/removing a destination companion on FAT/exFAT. - Use bounded POSIX streaming plus permissions/timestamps for regular files with literal companions and the companions themselves; apply directory POSIX metadata without
copyfilewhen a literal companion exists. Other copies retain native metadata handling. - Add regression coverage for quarantined file/directory companions, separate top-level restore calls, recursive serial/parallel copies and payloads spanning multiple stream buffers.
- Require macOS implementation 1.2.3; public API and platform interface 2.0.0 remain unchanged.
1.2.2 #
- Document bundled
wimlib-imagexintegration through the existingwimlibPathargument; no runtime download or public API change. - Report missing or nonworking Windows WIM tools with
phase: dependency_check,targetModified: false, dependency name and searched paths. These checks run before disk erasure. - Require macOS implementation 1.2.2; platform interface remains 2.0.0.
1.2.1 #
- Preserve AppleDouble
._companion files during recursive copies. Use POSIX directory enumeration because Foundation silently hides recognized companions, causing literal backup inventories to lose files even when copy calls succeed. - Avoid reserializing native extended attributes when a literal AppleDouble companion is present, so restoring to filesystems without native xattrs does not create a competing companion. Metadata remains in the preserved sidecar. Verify copied file existence and size before emitting completion.
- Add native regression coverage with generated AppleDouble metadata in both serial and parallel modes.
1.2.0 #
- Copy directories with at most four concurrent file workers by default;
parallel: falseuses one worker. Run independent disk operations on a concurrent background queue while preserving per-disk exclusion. - Report file start/completion through operation-correlated
fileCopyProgressmethod-channel events; remove callbacks when the operation future finishes. - Drain active workers before returning errors, retain partial output, preserve nested symlinks, and apply directory metadata after descendants.
- Reject existing copy destinations, including dangling symlinks. Copies still never merge or overwrite and have no chunk progress, in-flight cancellation or checksum verification.
- Require platform interface 2.0.0; extend native, transport and public example tests without formatting real disks.
1.1.0 #
- Map the additional APFS/HFS+ variants to native diskutil formats and reject MBR for both APFS variants.
- Require platform interface 1.1.0 and update the example format selector.
1.0.0 #
- Add raw IMG / USB-compatible hybrid ISO writing with optional read-back verification.
- Add Windows UEFI installation media preparation, including preflight FAT32 checks and optional oversized WIM splitting with caller-installed wimlib.
- Add macOS installation media preparation from an Apple-signed installer app.
- Add typed media stages and progress callbacks; allow system administrator authorization for raw writing and macOS installers.
- Update both examples, documentation, and explicit opt-in media tests.
- Require platform interface 1.0.0 and link Security with CocoaPods and SwiftPM.
0.0.1 #
-
Implement Disk Arbitration discovery callbacks and volume operations, with IOKit initial enumeration.
-
Add native file/directory copies and external formatting through diskutil.
-
Add automatic Dart registration, native errors, and a public API example for macOS 12+.
-
Add volume renaming and typed DiskInfo results for mount, unmount, and rename operations.