mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-08-30 09:07:40 -05:00
copyByJSONTag previously skipped any IsZero value, which made it impossible for tasks_update / projects_update to flip done from true to false, reset priority/percent_done to 0, or unarchive a project. A non-nil pointer src is now the unambiguous "caller supplied this" signal: dereferenced values are written through even when zero, while value-typed src fields keep the partial-update semantics. The affected wrapper fields (Done, IsArchived, IsFavorite, Priority, PercentDone, RepeatAfter, RepeatMode, BucketID, CoverImageAttachmentID, ParentProjectID, Position) move to pointer types so the JSON Schema still marks them optional.