Skip to content

beztrace 0.1.1-dev.1 · Glyphs companion build 6

Pre-release
Pre-release

Choose a tag to compare

@thierryc thierryc released this 28 Sep 23:43

Development prerelease

This release contains beztrace engine 0.1.1-dev.1 and the independently versioned Beztrace for Glyphs 0.1.0 build 6.

These are development builds without Developer ID signing or Apple notarization. Full installed-plugin UI qualification remains pending. The signed 0.1.0 release remains the latest stable release. This prerelease does not replace its artifacts or automatically update an installed engine.

Changes

  • Preserve small closed contours that previously collapsed during smoothing or fitting and failed winding validation.
  • Compute contour winding from cubic geometry, including loops with only two cubic segments.
  • Add Path → Beztrace… in Glyphs, distinct from Glyphs' built-in Filter → Trace Image.
  • Trace the background image already placed on the canvas, respecting its size, crop, rotation and other affine transformations. The compact panel exposes Choose Image, Threshold, Invert and Trace/Cancel.
  • Keep automatic sizing in the versioned image-placement Python API for coding agents.
  • Require matching executable and JSON engine versions. JSON schema v1 and pathDataVersion 2 remain unchanged.

Downloads and use

  • beztrace-0.1.1-dev.1-macos-universal.zip: standalone engine for macOS 13+, arm64 and x86_64. Extract it and use bin/beztrace inside its versioned directory.
  • beztrace-glyphs-0.1.0-build6-macos-universal.zip: optional Glyphs 4 companion. Requires Glyphs 4.1 build 4107+, macOS 13+, and the host Glyphs Python/PyObjC runtime.

Verify downloaded assets against SHA256SUMS. Install the companion bundle in the actual Glyphs 4 Application Support Plugins directory, then relaunch Glyphs. In Path → Beztrace… → ⋯ → Choose Engine…, select the extracted 0.1.1-dev.1 executable. The choice applies to the current panel session. The normal default still points to the separately installed 0.1.0 engine, which retains the reported small-contour bug.

For tracing, place or choose a PNG/JPEG, resize it using Glyphs' native image controls, and click Trace. Existing outlines and the source image are preserved; insertion supports Undo. This release includes no installer package and performs no automatic replacement of the shared engine.

Verification and limits

  • GitHub CI passed on Apple Silicon and Intel: 89 optimized Swift tests, one intentional maintenance-only skip, zero failures. All six required checks passed.
  • 95 companion tests passed, including contract/version checks, stale targets, recovery, placement API and deterministic packaging.
  • All 100 accepted corpus images retain identical path geometry to released 0.1.0.
  • The reported image traces successfully to 48 contours; output is byte-identical on arm64 and x86_64/Rosetta. The private image is not distributed.
  • Disposable Glyphs 4.1/4107 native checks passed for image preparation, DPI/orientation/crop, affine placement, foreground/background paths, readback and Undo/Redo. No user font was modified.

The companion remains development-unqualified in its manifest until full visible UI qualification is completed. Automated and native backend checks do not establish that qualification. This is fitted vector output intended for further type design, not exact pixel reconstruction.

See docs/SMALL_CONTOUR_FIX.md, Companions/Glyphs/README.md, and Companions/Glyphs/AGENT_API.md in the tagged source for the detailed report and API instructions. Assets include source/binary SPDX SBOMs, manifests and checksums.