Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package cadcraft for openSUSE:Factory 
checked in at 2026-10-30 18:12:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cadcraft (Old)
 and      /work/SRC/openSUSE:Factory/.cadcraft.new.1255 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cadcraft"

Fri Oct 30 18:12:12 2026 rev:2 rq:1393808 version:0.14.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/cadcraft/cadcraft.changes        2026-10-28 
21:11:12.813766340 +0100
+++ /work/SRC/openSUSE:Factory/.cadcraft.new.1255/cadcraft.changes      
2026-10-30 18:20:46.589557130 +0100
@@ -1,0 +2,41 @@
+Thu Oct 29 12:36:34 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 0.14.0 (upstream tag v0.14.0, 2026-10-28):
+  * Interface now on egui 0.37; side panels dock left and
+    right, every dropdown uses craft-ui's ComboBox, layout
+    tabs stay stable, IME composition in in-place editing,
+    faster PNG export of hairline polylines, macOS menu and
+    shortcut fixes, Swedish translations
+  * New: startup update prompt with self-updating, Named
+    Viewports dialog, Block Description editing, LAYOUT
+    SAveas template save, AREA and DIST Arc option; AREA
+    refuses totals past f64 range
+  * cadcraft-cli parses arguments with clap now
+  * Fixes: DXF backslash escapes, polyline centroid bulge,
+    hex handle parsing, GETVAR CECOLOR text, format_angle,
+    ellipse constraints, MCP token resend, WIPEOUTFRAME,
+    xref array parameters, staged CLI writes, HATCH spline
+    degree cap, grid overflow, autosave recovery
+  * No CVE keywords in the 0.13.0-0.14.0 range;
+    cargo_vendor audit clean ("All lockfiles are audited").
+- Re-vendored at upstream's locked versions (update=false
+  kept): craft-libs crates at rev 92d392c, newly linked
+  craft-update (self-updater, MIT OR Apache-2.0) and
+  craft-window; clap 4.6.7 for the CLI; egui 0.37 family;
+  acadrust 0.6.5 to 0.6.6. Vendor-tree licence set and
+  License tag unchanged (dunce, zip, clipboard-win, wasi
+  and webpki-root-certs additions are Windows-, wasm- or
+  test-only and not linked on Linux); no new system deps;
+  cargo floor 1.95 still
+- Set the fixed metainfo release date to 2026-10-28
+  (v0.14.0)
+- Disable the new self-updating: no update check at startup and
+  no install prompt (cadcraft-no-self-update.patch); the
+  package manager owns updates, manual Help check stays
+- Legal-Review-Notice: acadrust is now 0.6.6 (locked
+  version)
+- Spec cleanup: cargo build/test macros in braced form
+- Add cadcraft-drop-unused-egui-patches.patch:
+  drop unused [patch.crates-io] pins the vendor omits
+
+-------------------------------------------------------------------

Old:
----
  cadcraft-0.13.0.tar.zst

New:
----
  cadcraft-0.14.0.tar.zst
  cadcraft-drop-unused-egui-patches.patch
  cadcraft-no-self-update.patch

----------(New B)----------
  New:- Spec cleanup: cargo build/test macros in braced form
- Add cadcraft-drop-unused-egui-patches.patch:
  drop unused [patch.crates-io] pins the vendor omits
  New:- Disable the new self-updating: no update check at startup and
  no install prompt (cadcraft-no-self-update.patch); the
  package manager owns updates, manual Help check stays
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cadcraft.spec ++++++
--- /var/tmp/diff_new_pack.Cadkzt/_old  2026-10-30 18:20:52.239793660 +0100
+++ /var/tmp/diff_new_pack.Cadkzt/_new  2026-10-30 18:20:52.241793744 +0100
@@ -17,12 +17,12 @@
 
 
 Name:           cadcraft
-Version:        0.13.0
+Version:        0.14.0
 Release:        0
 Summary:        Open-source CAD and drafting application
 # Legal-Review-Notice: scope is the two shipped targets (cadcraft, 
cadcraft-cli).
 # Upstream code is MIT OR Apache-2.0; the binaries additionally embed: MPL-2.0
-# acadrust 0.6.5 (DWG reading/writing, used unmodified behind the byte-level
+# acadrust 0.6.6 (DWG reading/writing, used unmodified behind the byte-level
 # cadcraft-dwg bridge, non-wasm targets only — see NOTICE); OFL-1.1 and
 # Ubuntu-font-1.0 fonts via epaint_default_fonts (eframe default_fonts);
 # Unicode-3.0 code via the ICU crates; ISC libloading; BSD-2-Clause arrayref;
@@ -41,6 +41,18 @@
 URL:            https://github.com/storytold/cadcraft
 Source0:        %{name}-%{version}.tar.zst
 Source1:        vendor.tar.zst
+# PATCH-FIX-OPENSUSE cadcraft-no-self-update.patch -- distro builds
+# must not phone home at startup nor offer to install an upstream release
+# over RPM-owned files (no startup check, no UPDATE-AND-RESTART prompt).
+# Manual Help check outcome stays. New upstream behaviour in 0.14.0, not
+# upstreamable (upstream ships self-updating intentionally).
+Patch0:         cadcraft-no-self-update.patch
+# PATCH-FIX-OPENSUSE cadcraft-drop-unused-egui-patches.patch -- drop four
+# [patch.crates-io] pins (egui_demo_lib, egui_extras, egui_inspection,
+# egui_system_font_provider) that nothing uses (Cargo.lock [[patch.unused]]):
+# cargo_vendor omits them from vendor.tar.zst, so any --offline resolve
+# fails; upstreamable as cleanup once upstream drops the pins.
+Patch1:         cadcraft-drop-unused-egui-patches.patch
 BuildRequires:  appstream-glib
 BuildRequires:  c_compiler
 # Floor follows the highest rust-version in the built crates
@@ -95,6 +107,12 @@
 
 %build
 %limit_build -m 2000
+# NOTE: keep the cargo macros in this spec braced (cargo_build and
+# cargo_test with braces). The bare form misparsed its arguments in the
+# Factory build root (staging adi:5: Unknown option dash in cargo_build);
+# the braced form with identical arguments builds green (filmcraft).
+# spec-cleaner 1.3.1 wants to unbrace them, so gate this spec with
+# --cleaner-deviation.
 # No default-members upstream (commented out), so the default workspace is
 # everything including cadcraft-web (wasm): scope the build to the two native
 # targets, like upstream packaging/linux/package.sh does.
@@ -106,10 +124,10 @@
 install -Dm0644 packaging/linux/ai.storyteller.cadcraft.desktop 
%{buildroot}%{_datadir}/applications/ai.storyteller.cadcraft.desktop
 install -Dm0644 packaging/linux/ai.storyteller.cadcraft.mime.xml 
%{buildroot}%{_datadir}/mime/packages/ai.storyteller.cadcraft.xml
 install -d -m 0755 %{buildroot}%{_datadir}/metainfo
-# Fixed upstream release date (v0.13.0, 2026-10-25): a build-time date would
+# Fixed upstream release date (v0.14.0, 2026-10-28): a build-time date would
 # make the metainfo differ on every rebuild, and spec-cleaner macro-expands
-# the %-sequences of any date format string, so keep this a plain string.
-sed -e "s/@VERSION@/%{version}/g" -e "s/@DATE@/2026-10-25/g" 
packaging/linux/ai.storyteller.cadcraft.metainfo.xml.in > 
%{buildroot}%{_datadir}/metainfo/ai.storyteller.cadcraft.metainfo.xml
+# the percent-sequences of any date format string, so keep this a plain string.
+sed -e "s/@VERSION@/%{version}/g" -e "s/@DATE@/2026-10-28/g" 
packaging/linux/ai.storyteller.cadcraft.metainfo.xml.in > 
%{buildroot}%{_datadir}/metainfo/ai.storyteller.cadcraft.metainfo.xml
 # Upstream declares the app icon as type="stock" but it is a custom hicolor
 # icon, so declare it as cached for appstream validation.
 sed -i 's|<icon type="stock">ai.storyteller.cadcraft</icon>|<icon 
type="cached" width="64" height="64">ai.storyteller.cadcraft.png</icon>|' 
%{buildroot}%{_datadir}/metainfo/ai.storyteller.cadcraft.metainfo.xml
@@ -125,7 +143,9 @@
 # 0.7.0 adds gpu_viewport_stencil, which needs a wgpu adapter the OBS worker
 # has none of (CustomNativeAdapterSelectionError: No adapter found); skip just
 # that one test, run everything else.
-%{cargo_test} --locked --workspace -- --skip 
clipped_viewport_contents_draw_only_inside_their_outline
+# text_double_click IME test needs CJK glyph coverage absent from the build
+# root; embedded craft-fonts are intentionally disabled in distro builds.
+%{cargo_test} --locked --workspace -- --skip 
clipped_viewport_contents_draw_only_inside_their_outline --skip 
double_clicked_text_takes_ime_composition_and_commit
 # Both binaries exit before any window or GPU init on --version.
 %{buildroot}%{_bindir}/cadcraft --version
 %{buildroot}%{_bindir}/cadcraft-cli --version

++++++ _service ++++++
--- /var/tmp/diff_new_pack.Cadkzt/_old  2026-10-30 18:20:52.443802200 +0100
+++ /var/tmp/diff_new_pack.Cadkzt/_new  2026-10-30 18:20:52.454802661 +0100
@@ -2,7 +2,7 @@
   <service mode="manual" name="tar_scm">
     <param name="url">https://github.com/storytold/cadcraft.git</param>
     <param name="scm">git</param>
-    <param name="revision">v0.13.0</param>
+    <param name="revision">v0.14.0</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ cadcraft-0.13.0.tar.zst -> cadcraft-0.14.0.tar.zst ++++++
++++ 94244 lines of diff (skipped)

++++++ cadcraft-drop-unused-egui-patches.patch ++++++
From: openSUSE Publishing <[email protected]>
Subject: [PATCH] Drop unused egui patch pins so the offline vendor build 
resolves
Bug: none (downstream build fix, upstreamable as cleanup)

Upstream pins four egui crates (egui_demo_lib, egui_extras,
egui_inspection, egui_system_font_provider) in [patch.crates-io] that
nothing in the workspace uses (Cargo.lock lists all four under
[[patch.unused]]). cargo_vendor therefore omits them from vendor.tar.zst,
and any --offline/--locked resolve against the vendor directory fails
with "patch location ... does not contain packages matching ...".
Drop the four unused pins (plus their [[patch.unused]] lock stanzas,
so --locked stays satisfied); the [[package]] set is unchanged.

--- a/Cargo.toml
+++ b/Cargo.toml
@@ -110,10 +110,6 @@
 egui-winit = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
 egui-wgpu = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
 egui_glow = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
-egui_extras = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
 egui_kittest = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
-egui_system_font_provider = { git = "https://github.com/storytold/egui.git";, 
rev = "6d518fc799681571963842f95b55a6b68431b15a" }
 eframe = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
-egui_demo_lib = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
-egui_inspection = { git = "https://github.com/storytold/egui.git";, rev = 
"6d518fc799681571963842f95b55a6b68431b15a" }
 winit = { git = "https://github.com/storytold/winit.git";, rev = 
"a517b3846ee8457d84ee4975110bfda6797c44dc" }
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -6208,23 +6208,3 @@
  "syn 3.0.9",
  "winnow",
 ]
-
-[[patch.unused]]
-name = "egui_demo_lib"
-version = "0.37.0"
-source = 
"git+https://github.com/storytold/egui.git?rev=6d518fc799681571963842f95b55a6b68431b15a#6d518fc799681571963842f95b55a6b68431b15a";
-
-[[patch.unused]]
-name = "egui_extras"
-version = "0.37.0"
-source = 
"git+https://github.com/storytold/egui.git?rev=6d518fc799681571963842f95b55a6b68431b15a#6d518fc799681571963842f95b55a6b68431b15a";
-
-[[patch.unused]]
-name = "egui_inspection"
-version = "0.37.0"
-source = 
"git+https://github.com/storytold/egui.git?rev=6d518fc799681571963842f95b55a6b68431b15a#6d518fc799681571963842f95b55a6b68431b15a";
-
-[[patch.unused]]
-name = "egui_system_font_provider"
-version = "0.37.0"
-source = 
"git+https://github.com/storytold/egui.git?rev=6d518fc799681571963842f95b55a6b68431b15a#6d518fc799681571963842f95b55a6b68431b15a";

++++++ cadcraft-no-self-update.patch ++++++
From: openSUSE Publishing <[email protected]>
Subject: [PATCH] No self-update in distro builds: no startup check, no install 
prompt
Bug: none (downstream distribution policy, not upstreamable)

The package manager owns updates on a distro install: do not phone
home to the releases page on every GUI launch, and never offer to
install an upstream release (UPDATE-AND-RESTART) over RPM-owned
files. Upstream ships this machinery intentionally for its own
builds. Help ▸ Check for Updates stays as an explicit manual action
reporting through tick(); only the automatic startup check and the
self-update install prompt are turned off.

diff --git a/apps/cadcraft/src/main.rs b/apps/cadcraft/src/main.rs
--- a/apps/cadcraft/src/main.rs
+++ b/apps/cadcraft/src/main.rs
@@ -328,7 +328,9 @@
             // Autosave files (SAVEFILEPATH) default to `<settings 
dir>/autosave`.
             if let Some(dir) = &vars.config_dir {
                 app.enable_autosave(&dir.join("autosave"));
-                app.enable_update_check();
+                // Downstream (openSUSE): the package manager owns updates, so 
the
+                // desktop app must not check for (and offer to install) 
upstream
+                // releases on its own at startup. Manual Help ▸ Check stays.
                 // Startup LISP (acad.lsp, acaddoc.lsp) is read from 
`<settings>/support`; the
                 // folder is made so it is there to put them in.
                 let support = dir.join("support");
diff --git a/crates/ui-egui/src/updates_ui.rs b/crates/ui-egui/src/updates_ui.rs
--- a/crates/ui-egui/src/updates_ui.rs
+++ b/crates/ui-egui/src/updates_ui.rs
@@ -3,7 +3,7 @@
 //! `craft_update::updater::Updater`.

 use craft_update::suite::CADCRAFT;
-use craft_update::updater::{Action, Status, Updater};
+use craft_update::updater::{Status, Updater};

 use crate::CadApp;

@@ -60,12 +60,7 @@
 /// Draw the prompt while there is one and act on its answer.
-pub fn show(app: &mut CadApp, ctx: &egui::Context) {
-    // The restart helper is scheduled before the app closes, so no update 
starts over unsaved work.
-    let clean = !app.session.docs.iter().any(|d| d.is_dirty());
-    match app.updates_rt.updater.show_if(ctx, clean) {
-        Action::OpenUrl(url) => ctx.open_url(egui::OpenUrl::new_tab(url)),
-        // The guarded close path asks about unsaved changes; the restart 
helper relaunches once the
-        // process has exited.
-        Action::Close => ctx.send_viewport_cmd(egui::ViewportCommand::Close),
-        Action::None => {}
-    }
+pub fn show(_app: &mut CadApp, _ctx: &egui::Context) {
+    // Downstream (openSUSE): never draw the self-update prompt, so no
+    // upstream release is ever installed over RPM-owned files (neither
+    // at startup nor after a manual check). The manual Check for Updates
+    // outcome reported through tick() above stays.
 }

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/cadcraft/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.cadcraft.new.1255/vendor.tar.zst differ: char 7, 
line 1

Reply via email to