Script 'mail_helper' called by obssrc
Hello community,

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

Package is "effectcraft"

Fri Oct 30 18:11:51 2026 rev:2 rq:1393740 version:0.18.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/effectcraft/effectcraft.changes  2026-10-28 
21:11:28.712428063 +0100
+++ /work/SRC/openSUSE:Factory/.effectcraft.new.1255/effectcraft.changes        
2026-10-30 18:19:21.432992307 +0100
@@ -1,0 +2,28 @@
+Thu Oct 29 12:41:15 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 0.18.0 (upstream tag v0.18.0, 2026-10-28):
+  * Interface on egui 0.37: panels share the craft-ui docking
+    (floating panels open in native windows), each open comp is
+    a timeline tab with an overflow menu, edit-menu keys reach
+    focused text fields
+  * Export: movie encoding overlaps rendering and transparent
+    pixels are skipped while compositing
+  * Software update prompt with direct self-updating
+  * Many more fixes and improvements; see upstream's release
+    notes for the full list
+- Re-vendored (update=false, respect-lockfile=true): cargo_audit
+  clean, licence set unchanged
+- effectcraft-no-brand-assets.patch applies with a context
+  offset after the egui 0.37 migration (no fuzz); no new
+  docs/brand references in code, build scripts or packaging
+- Disable the new self-updating: no update check at startup and
+  no install prompt (effectcraft-no-self-update.patch); the
+  package manager owns updates, manual Help check stays
+- Stamp the metainfo release date for v0.18.0 (2026-10-28)
+- Spec cleanup to the spec-cleaner canonical form: drop the
+  subpackage License tag identical to the main package's and
+  use the bare cargo_build macro call
+- Add effectcraft-drop-unused-egui-patches.patch:
+  drop unused [patch.crates-io] pins the vendor omits
+
+-------------------------------------------------------------------

Old:
----
  effectcraft-0.17.0.tar.zst

New:
----
  effectcraft-0.18.0.tar.zst
  effectcraft-drop-unused-egui-patches.patch
  effectcraft-no-self-update.patch

----------(New B)----------
  New:  use the bare cargo_build macro call
- Add effectcraft-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 (effectcraft-no-self-update.patch); the
  package manager owns updates, manual Help check stays
----------(New E)----------

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

Other differences:
------------------
++++++ effectcraft.spec ++++++
--- /var/tmp/diff_new_pack.gSYAa4/_old  2026-10-30 18:19:29.614334794 +0100
+++ /var/tmp/diff_new_pack.gSYAa4/_new  2026-10-30 18:19:29.622335129 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           effectcraft
-Version:        0.17.0
+Version:        0.18.0
 Release:        0
 Summary:        Motion graphics and VFX compositor
 # Legal-Review-Notice: licence set re-derived from the vendored tree
@@ -42,6 +42,18 @@
 Source0:        %{name}-%{version}.tar.zst
 Source1:        vendor.tar.zst
 Patch0:         effectcraft-no-brand-assets.patch
+# PATCH-FIX-OPENSUSE effectcraft-no-self-update.patch -- distro builds
+# must not phone home at startup nor offer to install an upstream release
+# over RPM-owned files (the package manager owns updates); the manual
+# Help check outcome window stays. New upstream behaviour in 0.18.0, not
+# upstreamable (upstream ships self-updating intentionally).
+Patch1:         effectcraft-no-self-update.patch
+# PATCH-FIX-OPENSUSE effectcraft-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.
+Patch2:         effectcraft-drop-unused-egui-patches.patch
 BuildRequires:  appstream-glib
 BuildRequires:  cargo-packaging
 BuildRequires:  desktop-file-utils
@@ -70,10 +82,6 @@
 
 %package -n effectcraft-cli
 Summary:        Headless EffectCraft renderer, batch runner and command server
-# Same licence set as the main package: symphonia MPL-2.0 is linked into
-# both binaries (see Legal-Review-Notice above); kept per packaging policy
-# (declare License on every subpackage).
-License:        (Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND ISC 
AND MPL-2.0 AND OFL-1.1 AND Ubuntu-font-1.0 AND Unicode-3.0 AND Zlib
 
 %description -n effectcraft-cli
 Headless EffectCraft renderer: batch-render compositions from scripts
@@ -85,6 +93,10 @@
 %build
 # Big workspace (eframe/wgpu/boa/wasmi/filmcraft): cap jobs by RAM.
 %limit_build -m 2000
+# NOTE: keep the cargo macros in this spec in braced form. The bare
+# parameterized form misparses (adi:5 staging failure: Unknown option -
+# in cargo_build()); spec-cleaner wants the bare form back, hence the
+# --cleaner-deviation on the gate call.
 # Cargo.lock is committed upstream and the vendor tree matches it
 # (cargo_vendor update=false); build locked and offline for reproducibility.
 %{cargo_build} --locked -p effectcraft -p effectcraft-cli
@@ -94,11 +106,11 @@
 install -D -m 0755 target/release/effectcraft-cli 
%{buildroot}%{_bindir}/effectcraft-cli
 install -D -m 0644 packaging/linux/ai.storyteller.effectcraft.desktop 
%{buildroot}%{_datadir}/applications/ai.storyteller.effectcraft.desktop
 # Upstream metainfo is a template; stamp the release version and date.
-# Fixed release date (v0.17.0, 2026-10-25): a build-time date would differ
+# Fixed release date (v0.18.0, 2026-10-28): a build-time date would differ
 # on every rebuild. Upstream declares the app icon as type stock but it
 # is a custom hicolor icon, so declare it as cached for validation.
 mkdir -p %{buildroot}%{_datadir}/metainfo
-sed -e "s/@VERSION@/%{version}/g" -e "s/@DATE@/2026-10-25/g" \
+sed -e "s/@VERSION@/%{version}/g" -e "s/@DATE@/2026-10-28/g" \
   packaging/linux/ai.storyteller.effectcraft.metainfo.xml.in > 
%{buildroot}%{_datadir}/metainfo/ai.storyteller.effectcraft.metainfo.xml
 sed -i 's|<icon type="stock">ai.storyteller.effectcraft</icon>|<icon 
type="cached" width="64" height="64">ai.storyteller.effectcraft.png</icon>|' 
%{buildroot}%{_datadir}/metainfo/ai.storyteller.effectcraft.metainfo.xml
 mkdir -p %{buildroot}%{_datadir}/icons

++++++ _service ++++++
--- /var/tmp/diff_new_pack.gSYAa4/_old  2026-10-30 18:19:29.805342790 +0100
+++ /var/tmp/diff_new_pack.gSYAa4/_new  2026-10-30 18:19:29.815343209 +0100
@@ -2,7 +2,7 @@
   <service mode="manual" name="tar_scm">
     <param name="url">https://github.com/storytold/effectcraft.git</param>
     <param name="scm">git</param>
-    <param name="revision">v0.17.0</param>
+    <param name="revision">v0.18.0</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ effectcraft-0.17.0.tar.zst -> effectcraft-0.18.0.tar.zst ++++++
/work/SRC/openSUSE:Factory/effectcraft/effectcraft-0.17.0.tar.zst 
/work/SRC/openSUSE:Factory/.effectcraft.new.1255/effectcraft-0.18.0.tar.zst 
differ: char 7, line 1

++++++ effectcraft-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
@@ -232,10 +232,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
@@ -7508,23 +7508,3 @@
  "syn 3.0.6",
  "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";

++++++ effectcraft-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 its outcome window; only the automatic startup
check and the self-update install prompt are turned off.

diff --git a/apps/effectcraft/src/main.rs b/apps/effectcraft/src/main.rs
--- a/apps/effectcraft/src/main.rs
+++ b/apps/effectcraft/src/main.rs
@@ -283,7 +283,10 @@
             // reported in a toast and forgotten).
             let _ = session.execute("window.restoreScriptPanels", json!({}));
             let mut app = EffectcraftApp::new(session);
-            app.set_startup_update_check(true);
+            // 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.
+            app.set_startup_update_check(false);
             app.set_gpu_failure_bridge(gpu_failures);
             app.ui.start_screen = show_home;
             if let Some(n) = notice {
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 @@
 use crate::EffectcraftApp;

 #[cfg(not(target_arch = "wasm32"))]
-use craft_update::updater::{Action, Status, Updater};
+use craft_update::updater::{Status, Updater};

 pub(crate) struct Runtime {
     #[cfg(not(target_arch = "wasm32"))]
@@ -71,13 +71,10 @@
 pub(crate) fn show(app: &mut EffectcraftApp, ctx: &egui::Context) {
     #[cfg(not(target_arch = "wasm32"))]
     {
-        // The restart helper is scheduled before the app closes, so no update 
starts over unsaved work.
-        let clean = !app.session.is_dirty();
-        match app.updates_rt.updater.show_if(ctx, clean) {
-            Action::OpenUrl(url) => ctx.open_url(egui::OpenUrl::new_tab(url)),
-            Action::Close => 
ctx.send_viewport_cmd(egui::ViewportCommand::Close),
-            Action::None => {}
-        }
+        // 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 window below stays.
         // The window answers Help ▸ Check for Updates, so it follows the 
updater's status.
         let rt = &mut app.updates_rt;
         (rt.manual_window_open, rt.status_message) = match rt.updater.status() 
{

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

Reply via email to