From 1a6ee2ca70db45e7748c8a4312f4d4305cf628e7 Mon Sep 17 00:00:00 2001 From: aiongg Date: Fri, 16 Oct 2026 03:11:36 +0000 Subject: [PATCH] Integration: compile fixes after merging main a184db6f8 - compose: a test frame literal named section_marker twice. - export: PPTX rasterizing keeps a wrap stand-in for each rasterized object (next's rasterize_where takes keep_wrap). - flex: to_bytes returns a Result on main. - package, combined_close_glyph test: load_document_fonts takes an access check. - pptx test: Graphic literal gains next's clip and wrap fields. - render placed_pdf test: PdfCrop imported twice. --- crates/compose/src/lib.rs | 1 - crates/engine/src/cmd/export.rs | 2 +- crates/engine/src/cmd/flex.rs | 2 +- crates/engine/src/cmd/package.rs | 2 +- crates/engine/tests/combined_close_glyph.rs | 4 ++-- crates/pptx/src/tests.rs | 2 ++ crates/render/tests/placed_pdf.rs | 1 - 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/crates/compose/src/lib.rs b/crates/compose/src/lib.rs index d5fa047f..60fa11cc 100644 --- a/crates/compose/src/lib.rs +++ b/crates/compose/src/lib.rs @@ -4606,7 +4606,6 @@ mod column_allocation_safety_tests { left_page: false, page_rect: None, outline: None, - section_marker: None, } } fn check(kind: designcraft_doc::ColumnsKind) { diff --git a/crates/engine/src/cmd/export.rs b/crates/engine/src/cmd/export.rs index 74bbbab5..90df6e21 100644 --- a/crates/engine/src/cmd/export.rs +++ b/crates/engine/src/cmd/export.rs @@ -92,7 +92,7 @@ fn export_pptx(s: &mut Session, p: &Value) -> Result { // Object Export Options › Rasterize, and what PowerPoint has no objects for (a threaded frame // stays text: a picture of it would drop the rest of its story). let auto = p.get("rasterize").and_then(Value::as_bool).unwrap_or(true); - let (raster, rasterized) = rasterize_where(&st.doc, &s.cache, 300.0, |it| { + let (raster, rasterized) = rasterize_where(&st.doc, &s.cache, 300.0, true, |it| { !threaded(&st.doc, it) && (it.export_options.rasterize || (auto && designcraft_pptx::needs_raster(&st.doc, it))) }); let doc: &designcraft_doc::Document = raster.as_ref().unwrap_or(&st.doc); diff --git a/crates/engine/src/cmd/flex.rs b/crates/engine/src/cmd/flex.rs index e8ef451a..9b0f56b1 100644 --- a/crates/engine/src/cmd/flex.rs +++ b/crates/engine/src/cmd/flex.rs @@ -562,7 +562,7 @@ mod tests { let c = s.execute("flex.add", &json!({})).unwrap()["id"].as_u64().unwrap(); s.execute("flex.set", &json!({"direction": "columnReverse", "wrap": true, "padding": [1, 2, 3, 4], "gapV": 7})).unwrap(); let d = s.doc().unwrap().doc.clone(); - let back = crate::cmd::from_bytes(&crate::cmd::to_bytes(&d)).unwrap(); + let back = crate::cmd::from_bytes(&crate::cmd::to_bytes(&d).unwrap()).unwrap(); assert_eq!(back.item(ItemId(c)).unwrap().flex, d.item(ItemId(c)).unwrap().flex); assert!(back.item(ItemId(c)).unwrap().flex.is_some()); } diff --git a/crates/engine/src/cmd/package.rs b/crates/engine/src/cmd/package.rs index f0c7a3e6..b953fdc7 100644 --- a/crates/engine/src/cmd/package.rs +++ b/crates/engine/src/cmd/package.rs @@ -735,7 +735,7 @@ mod tests { assert_eq!(copy_font(&root, &face, &fonts, &mut copied, &mut taken, &mut files), ""); assert_eq!(files, [fonts.join("12345.ttf")]); let db = designcraft_fonts::FontDb::global(); - let loaded = db.load_document_fonts(&fonts); + let loaded = db.load_document_fonts(&fonts, &|_| Ok(())); assert_eq!((loaded.faces, loaded.skipped.len()), (1, 0), "{:?}", loaded.skipped); db.close_scope(loaded.scope); // The first four bytes name the kind; a font extension or an unknown kind stays. diff --git a/crates/engine/tests/combined_close_glyph.rs b/crates/engine/tests/combined_close_glyph.rs index 73db40a1..6856625b 100644 --- a/crates/engine/tests/combined_close_glyph.rs +++ b/crates/engine/tests/combined_close_glyph.rs @@ -124,8 +124,8 @@ fn scoped_font_jobs_and_owned_layouts_survive_close_and_same_story_reopen() { std::fs::write(old_folder.join("font.ttf"), font_with_glyph(FAMILY, &['x'], 'X').unwrap()).unwrap(); std::fs::write(new_folder.join("font.ttf"), font_with_glyph(FAMILY, &['x'], 'O').unwrap()).unwrap(); let db = FontDb::global(); - let old_fonts = db.load_document_fonts(&old_folder); - let new_fonts = db.load_document_fonts(&new_folder); + let old_fonts = db.load_document_fonts(&old_folder, &|_| Ok(())); + let new_fonts = db.load_document_fonts(&new_folder, &|_| Ok(())); assert_eq!((old_fonts.faces, new_fonts.faces), (1, 1)); assert_ne!(old_fonts.scope, new_fonts.scope); diff --git a/crates/pptx/src/tests.rs b/crates/pptx/src/tests.rs index b6ff596c..d8eed869 100644 --- a/crates/pptx/src/tests.rs +++ b/crates/pptx/src/tests.rs @@ -218,6 +218,8 @@ fn pictures_are_cropped_to_their_frames() { auto_fit: designcraft_doc::Fitting::None, fit_align: 0, crop: [0.0; 4], + clip: None, + wrap: Default::default(), }); }); let mut z = export(&d, &PptxOptions::default()); diff --git a/crates/render/tests/placed_pdf.rs b/crates/render/tests/placed_pdf.rs index 9e49cb87..0a7431a7 100644 --- a/crates/render/tests/placed_pdf.rs +++ b/crates/render/tests/placed_pdf.rs @@ -10,7 +10,6 @@ use std::sync::mpsc::{self, RecvTimeoutError}; use std::time::Duration; use designcraft_compose::Cache; -use designcraft_doc::PdfCrop; use designcraft_doc::build::NewDocument; use designcraft_doc::{Asset, AssetId, Content, Document, Graphic, Item, ItemId, PdfCrop, Shape, SpreadRef}; use designcraft_geom::{Affine, Rect, shapes};