Repository navigation
Annotrail v0.1.1
Pre-releaseSuperseded by 0.1.2. The macOS ZIP in this older release has an invalid ad-hoc resource seal because license symlinks were flattened after signing. Use 0.1.2 or later. This defect is separate from the lack of Developer ID signing/notarization. Assets below are retained for historical reproducibility.
This patch fixes exports to filesystems without hard links, including the path needed by exFAT/FAT32. Existing destinations are never replaced. The fallback reserves a new filename exclusively, copies the verified staged output, and checks ownership before rollback. Collision, cancellation, partial-write, report-failure, symlink and concurrent-replacement regressions were added.
Source commit: 39c205e7be88d4a36a9eb999f4d6dad200a58134.
Exact-commit CI passed 72 tests on each of macOS, Linux and Windows, with zero failures or skips. All three also passed a real native Swing-window review/export/reopen workflow and the extracted runtime-included package CLI workflow. The CI-produced macOS ZIP was independently exercised again on the local Mac.
Download your platform ZIP; Java is included. The standalone JAR requires Java 17+. Verify SHA256SUMS. macOS bundle build 2 corresponds to product version 0.1.1. Reanalyze after upgrading to create a new review plan.
The native-window test drives the application's own controls; OS mouse/keyboard and native file-picker interaction remain unverified because the desktop automation tool failed. Packages are unsigned and not notarized; no signing identity was available. These remain explicit external release limitations, so this is a preview package. No operating-system protections were disabled.
On the copy fallback an incomplete destination can be visible until export finishes; forced termination/power loss can leave partial files. Use output folders you control and wait for success. Actual exFAT/FAT32 hardware was not tested: the OS denied creation of the disposable exFAT test image. Unsupported-hard-link and filesystem-failure cases were tested through fault injection. Portable Java does not make identity-check-and-unlink atomic against a hostile concurrent process.
Supported scope remains selectable-text PDFs with embedded Highlight, Underline, StrikeOut and Text comments. No OCR, handwriting, rotated text, encrypted input or signed revised-PDF workflow. Reports can contain private document text and author metadata.
The Temurin source and build archives are corresponding source for the bundled runtime; they are not required to run Annotrail. Licenses and notices are included in every package. The standalone JAR is the Linux CI artifact; executable classes/resources match the other platforms, with only Windows line endings in generated pom.properties differing.