Commit Graph
4870 Commits
Author SHA1 Message Date
Dylan M. Taylor b0bee1718c Use shared typed IDML style groups 2026-11-13 04:34:48 -05:00
Dylan M. Taylor 1eb348f115 Use shared IDML geometry model 2026-11-13 04:30:43 -05:00
Dylan M. Taylor bfbb831e54 Use shared neutral SVG scene for paste 2026-11-13 04:25:01 -05:00
Dylan M. Taylor 2769d0b88f Move DTD and raster encoding to craft-libs 2026-11-13 04:13:55 -05:00
Dylan M. Taylor 581ba450cd Delegate screen SVG parsing and rendering 2026-11-13 03:55:54 -05:00
Dylan M. Taylor 275b907c57 Use shared PDF SVG adapter and CSV sniffing 2026-11-13 03:43:21 -05:00
Dylan M. Taylor c1fdb6b3af Align PDF dependency guard with shared backend pin 2026-11-13 03:19:42 -05:00
Dylan M. Taylor cc9156d8b2 Delegate PDF/X-1a finishing to craft-prepress 2026-11-13 03:15:13 -05:00
Dylan M. Taylor e65f6c3078 Remove app-side PPTX XML generation 2026-11-13 03:05:09 -05:00
Dylan M. Taylor 9272139d2b Export Presentation model directly through craft-pptx 2026-11-13 02:55:45 -05:00
Dylan M. Taylor bfd10a576d Map PPTX fills and effects to shared models 2026-11-13 02:38:08 -05:00
Dylan M. Taylor 0be5fcb01a Map PPTX tables and placed images to shared models 2026-11-13 02:29:45 -05:00
Dylan M. Taylor 304f93dda8 Map composed PPTX text to shared presentation models 2026-11-13 02:24:12 -05:00
Dylan M. Taylor 2a6918255e Map simple PPTX shapes to shared presentation models 2026-11-13 02:18:53 -05:00
Dylan M. Taylor 916749b2d0 Delegate XML parsing and PPTX writing to craft-libs 2026-11-13 02:13:35 -05:00
Dylan M. Taylor 3eaba67f58 Fix Clippy range loop in path orientation 2026-11-13 02:05:13 -05:00
Dylan M. Taylor 32c239cacc Use shared image codecs for CLI previews 2026-11-13 01:59:00 -05:00
Dylan M. Taylor b6edf03809 Delegate PPTX ZIP packaging to craft-opc 2026-11-13 01:57:32 -05:00
Dylan M. Taylor 08a65d45a8 Route spreadsheet extensions through shared registry 2026-11-13 01:56:22 -05:00
Dylan M. Taylor a23b40e29a Use shared CSV and TSV format mappings 2026-11-13 01:52:51 -05:00
Dylan M. Taylor 29e0198952 Delegate delimited text parsing to craft-csv 2026-11-13 01:50:15 -05:00
Dylan M. Taylor bfef83bfd1 Use shared format probes for document opens 2026-11-13 01:46:50 -05:00
Dylan M. Taylor 3028b5328c Format shared registry dispatch 2026-11-13 01:45:29 -05:00
Dylan M. Taylor 44fd4aec60 Route CLI format dispatch through shared registry 2026-11-13 01:42:51 -05:00
Dylan M. Taylor d373506feb Route UI format dispatch through shared registry 2026-11-13 01:39:41 -05:00
Dylan M. Taylor aff7435b81 Route file dispatch through shared format APIs 2026-11-13 01:34:50 -05:00
Dylan M. Taylor fee641be68 Fix current Rust clippy findings 2026-11-13 01:25:27 -05:00
Dylan M. Taylor 32348da073 Route PDF parsing and raster import through craft-libs 2026-11-13 01:19:41 -05:00
Dylan M. Taylor fcb571c52a Delegate raster codecs and text interchange to craft-libs 2026-11-13 01:11:49 -05:00
Dylan M. Taylor 9b0c6ee2a7 Delegate EPS preview parsing to craft-eps 2026-11-13 00:40:26 -05:00
Dylan M. Taylor 3617464d73 Use craft-eps for EPS section and box parsing 2026-11-13 00:35:54 -05:00
Dylan M. Taylor dce5d19dc2 Delegate XLSX parsing to craft-libs 2026-11-13 00:32:11 -05:00
Dylan M. Taylor 6ff34b922f Delegate RTF parsing and writing to craft-libs 2026-11-13 00:28:33 -05:00
Dylan M. Taylor 9889488f5d Fix lockfile and EPS test after rebase 2026-11-13 00:18:41 -05:00
Dylan M. Taylor 1883719699 Move IDML package IO and SVG preflight to craft-libs 2026-11-13 00:16:41 -05:00
Dylan M. Taylor 7a0c256601 Move native bundle and EPUB packaging to craft-libs 2026-11-13 00:16:41 -05:00
Dylan M. Taylor 33a4678722 Merge tested main for v0.20.1 v0.20.1 2026-11-11 18:37:32 -05:00
FredApps 4bdc036769 CI: nightly release dry run (#2633)
release.yml also runs nightly on main with craft-common-actions' dry-run: every release build
except macOS, with nothing signed, pushed or drafted. Breakage that only the release build hits
(riscv64, Flatpak, FreeBSD, packaging) then shows up the next morning instead of on release
day, as it did on 11 Nov 2026.
2026-11-11 23:03:58 +01:00
Dylan M. Taylorandaiongg d6a09639bf Repagination, IDML swatch import and style folders: linear work, bounded depth (#2237)
* Repagination, swatch import and style folders: linear page numbers, resumed duplicate suffixes, bounded folder depth

* fix Section initializer after merging main

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:21:23 -05:00
Dylan M. Taylorandaiongg dc9eea2695 Small bounds: outline simplification, table row insertion, note ids, xtask stats (#2232)
* fix: iterative outline simplification, bulk row insertion, linear note ids, no symlink walking in xtask stats

* Apply review fixes

- crates/doc/src/tests.rs
- crates/geom/src/trace.rs

* Apply review fixes

- crates/geom/src/trace.rs

* address review: cover a maximal note id in tests, format trace test

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:20:58 -05:00
eba00a0dec Opening documents: index lookups in Document::check and the format-1 style upgrade (#2218)
* fix(doc): index items, threads and styles when opening a document

* Apply review fixes

- crates/doc/src/tests.rs

* address review: borrow style names in pin_para_default

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
Co-authored-by: autocraft-bot[bot] <354215646+autocraft-bot[bot]@users.noreply.github.com>
2026-11-11 16:20:34 -05:00
Dylan M. Taylorandaiongg 15bea9fa7a Tagged Text, RTF, EPUB classes and PDF layers: lookups by set or map instead of list searches (#2212)
* fix: index style, font, class and layer name lookups in exporters and importers

* Apply review fixes

- crates/epub/src/css.rs

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:20:09 -05:00
Dylan M. Taylorandaiongg 5a3507510e File reads: refuse devices and pipes, cap whole-file reads (#2227)
* fix(engine): whole-file reads take regular files only, up to the format limit

* Apply review fixes

- crates/engine/src/io.rs

* Apply review fixes

- crates/engine/src/io.rs

* Fix failing CI check

- crates/engine/src/io.rs

* address review: refuse to save an encoded document longer than the open limit

* address review: open files for reading without blocking (FIFOs, stream-backed pseudo-files)

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:19:45 -05:00
Dylan M. Taylorandaiongg 8d59590449 Package: copy each font as it was loaded, check read roots, number duplicate names in one pass (#2208)
* fix(engine): package fonts from their loaded bytes under the read roots

* address review: a font's own file is neither overwritten nor packaged when it changed since loading

* Apply review fixes

- crates/engine/src/cmd/package.rs

* address review: compare packaged font file in fixed-size chunks

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:19:20 -05:00
Dylan M. Taylorandaiongg cfd99ba9b5 Automation roots: compare paths exactly; recovery reads only regular entry files (#2205)
* fix(engine): exact root containment and regular-file recovery entries

* Apply review fixes

- crates/engine/src/recovery.rs

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:18:55 -05:00
Dylan M. Taylorandaiongg 34f24a4d2a Gradients: expand midpoint stops in linear time (#2214)
* fix(color): sample gradients by binary search when expanding midpoints

* Apply review fixes

- crates/color/src/gradient.rs

* Apply review fixes

- crates/color/src/gradient.rs

* Fix failing CI check

- crates/color/src/gradient.rs

---------

Co-authored-by: aiongg <67543387+aiongg@users.noreply.github.com>
2026-11-11 16:18:31 -05:00
Dylan M. Taylor eba5b9f845 datamerge: all further pages in one insertion, page lookups by start index (#2279) 2026-11-11 16:18:07 -05:00
Dylan M. Taylorandautocraft-bot[bot] c684db5428 Tools: selection bounds in one walk, bounded smart spacing and parent snapping (#2260)
* tools: selection bounds in one walk, caps on smart-spacing boxes and parent occurrences

* Apply review fixes

- crates/tools/src/lib.rs

* address review: iterative selection walk; stop collecting spacing boxes at the cap

---------

Co-authored-by: autocraft-bot[bot] <354215646+autocraft-bot[bot]@users.noreply.github.com>
2026-11-11 16:17:42 -05:00
Dylan M. Taylorandautocraft-bot[bot] 79d7a912f1 Strokes: cap the points a wavy or hashed stroke places along a path (#2188)
* Strokes: cap the points a wavy or hashed stroke places along a path

* address review: zero-length quadratic contributes no length in stroke samples

* Fix failing CI check

- crates/geom/src/stroke_style.rs

* Fix failing CI check

- crates/geom/src/stroke_style.rs

---------

Co-authored-by: autocraft-bot[bot] <354215646+autocraft-bot[bot]@users.noreply.github.com>
2026-11-11 16:17:18 -05:00
Dylan M. Taylorandautocraft-bot[bot] 589f5ff8a3 Engine: Erase and Smooth search each distinct drag sample once (#2272)
* engine: Erase/Smooth look at each distinct drag sample once, thinned past 4096

* Apply review fixes

- crates/engine/src/cmd/anchors.rs

* address review: decide whether a drag touched the path on every distinct sample, then thin

---------

Co-authored-by: autocraft-bot[bot] <354215646+autocraft-bot[bot]@users.noreply.github.com>
2026-11-11 16:16:54 -05:00