Debian Patches

Status for valentina/1.1.0+dfsg-1

Patch Description Author Forwarded Bugs Origin Last update
02026-06-29T15:39:38+03:00~bb39c6c83.patch commit bb39c6c83d6420291a70753c7e87a7af2079a10a

Make usage statistics opt-in and never run in command-line mode

Usage telemetry (Google Analytics) defaulted to enabled and fired even in
non-GUI/command-line invocations. On a build server without internet this
stalled the process exit, failing CollectionTest::tst_valentinacommandline.

Default IsCollectStatistic() to false so a fresh/CI environment sends nothing
until a user opts in via the consent dialog, and gate the command-line-reachable
send sites to GUI mode so an opted-in desktop user's CLI export stays silent.

Related to #242

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
(cherry picked from commit 5b1d1e22f2270ba1042c1899aefbf18d179bbc49)

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-29
02026-06-29T16:05:24+03:00~fc6799f7a.patch commit fc6799f7a78202d7794679e745523298e3443f1d

Improve screen diagnostics and drop icon-shadow log spam

Display-reconfiguration crashes on macOS land inside the platform style
painting with no application frames, so the log is the only signal. The
existing diagnostics logged only QScreen::name(), which is empty during the
failing transition. Dump full screen identity (manufacturer, model, serial,
geometry, DPR, logical/physical DPI, depth, refresh rate), connect the
previously missing screenRemoved signal, and follow per-screen DPI/geometry
changes, across all three GUI apps.

Also remove the per-icon qDebug tracing from StyleHelper::drawIconWithShadow
(leftover Windows DPI scaffolding) that flooded logs and buried the relevant
lines, and restore its canonical single shadow-fill pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
(cherry picked from commit bb0049b91c2516504df308202c75f3e0682abc39)

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-29
02026-06-29T21:03:06+03:00~20c73e880.patch commit 20c73e88094e0b375fb598ab2fcb183fc5d16bd3

Reformat ifc and vformat document classes with clang-format-20

Apply the repository .clang-format to the files about to gain save-time schema
validation, so the functional change is not polluted with unrelated style
churn. No behavior change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-29
02026-06-29T21:03:22+03:00~ff0a7963b.patch commit ff0a7963b6b81047d87e41688eaac1c2a86bfa67

Validate documents against their schema before committing a save

QSaveFile guarantees an atomic write but not valid content: if the in-memory
document was empty or damaged at save time, SaveCanonicalXML wrote only the
XML prolog, reported success, and commit() atomically replaced the user's good
file with an empty/corrupt one. This caused occasional reports of completely
empty files.

VDomDocument::SaveDocument now serializes into a buffer and refuses to commit
unless the content is valid:
- an empty document (null documentElement) is rejected outright;
- the serialized bytes are validated against the document's XSD schema before
the QSaveFile is opened, so a damaged document can never overwrite a good
file on disk.

The schema is provided by a new virtual SaveSchema() hook (empty by default).
Overrides cover all VDomDocument-backed formats: patterns (VAbstractPattern),
individual/multisize measurements (VMeasurements), watermarks (VWatermark),
label templates (VLabelTemplate) and known measurements
(VKnownMeasurementsDocument). The Xerces validation logic is extracted into a
shared VDomDocument::ValidateXMLData, which VAbstractConverter::ValidateXML now
also uses (single source of truth for load-time validation).

Adds TST_VDomDocument covering the empty-document guard and schema rejection.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-29
02026-06-30T07:54:38+03:00~ec56bfe6e.patch commit ec56bfe6e7db222336fa384efd788ae430b32510

Inline settings declaration in condition and remove redundant variable

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T07:56:22+03:00~447787ff3.patch commit 447787ff3c6017816bb16b64e0e790063cb52279

Make BlockUndoRedoWhileDialogOpen() a const member function

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T07:57:48+03:00~2c04947d7.patch commit 2c04947d73c14b5fdb010f4c1520dc5fe5aa5bea

Declare and assign pixmapName inside if condition for cache lookup

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T07:59:20+03:00~fdd3465d3.patch commit fdd3465d3bc8ea7801c0b1dbc8cb68f56fb411e3

Replace QByteArray with auto for sentinel and invalid variables

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:03:09+03:00~bd45b5f11.patch commit bd45b5f119efec363295c9e44959ebecea5350e6

Change function parameters to const QSharedPointer<VContainer>& and const QScreen*

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:10:14+03:00~5ed80ea27.patch commit 5ed80ea27220d25aa74eca72af1b7064c8377799

Hoist LogScreenInfo lambdas into free functions

Move DumpScreen and ConnectScreenSignals out of LogScreenInfo into the
anonymous namespace as free functions to resolve cpp:S1188 (lambdas with
too many lines).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:13:56+03:00~1da3e94dd.patch commit 1da3e94dd43bb6ce8da8b48e940bb1572b0d76c9

Group dimension bases into a struct in ReadMeasurement

Bundle baseA/baseB/baseC into a DimensionBases struct to reduce
VMeasurements::ReadMeasurement parameter count, resolving cpp:S107
(functions should not have too many parameters).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:18:20+03:00~5e28211dc.patch commit 5e28211dc54906558d9106882a571cf5f7f19324

Reformat tmainwindow with clang-format

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:19:22+03:00~78b57f076.patch commit 78b57f07642d2541b9d6493143a0375894f33e15

Extract format-version statistic collection from LoadFile

Move the duplicated, deeply-nested analytics block out of the two
Multisize/Individual branches in TMainWindow::LoadFile into a
CollectFormatVersionStatistic helper with an early return, resolving
cpp:S3776 (cognitive complexity too high).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:41:39+03:00~436f0c1a0.patch commit 436f0c1a0afcffb0d47442a165ccb034c88fe3d6

Send reserved first_visit event so GA4 counts New users

The Measurement Protocol does not auto-generate first_visit, so the
custom vapp_fresh_install event never registered as a new user.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
02026-06-30T08:47:33+03:00~c9dd9f213.patch commit c9dd9f21331fcd2a092ee779438ced6fdfba3753

Lupdate

Branch: develop
Roman Telezhynskyi <dismine@gmail.com> no 2026-06-30
1001_open_helper_tools_only_from_PATH.patch Use only environment PATH to open tape from within valentina Jonas Smedegaard <<dr@jones.dk> no 2019-01-09
1002_path_to_tables.patch correct relative paths to measurement tables Jonas Smedegaard <<dr@jones.dk> no 2025-09-12
2001_failing_test.patch avoid failing tests Jonas Smedegaard <<dr@jones.dk> no debian 2026-06-24

All known versions for source package 'valentina'

Links