Commit Graph

14 Commits

Author SHA1 Message Date
Gregor Biswanger
d7e1a09880 fix: correct ReleaseNotes deserialization for AutoUpdater (fixes #1039) (#1061)
* fix: correct ReleaseNotes deserialization for AutoUpdater (fixes #1039)

- TypeScript normalize() now maps string releaseNotes to { note } objects
  and also handles arrays of strings (both cases were broken in PR #1041)
- Added ReleaseNotesConverter (JsonConverter<ReleaseNoteInfo[]>) as defensive
  C# layer that handles all shapes: null, string, string[], object[]
- Added [JsonConverter] attribute on UpdateInfo.ReleaseNotes
- Added unit tests (no Electron required) covering all four input shapes

* chore: sync generated autoUpdater.js and .map with updated TypeScript source

* refactor: address Copilot PR review comments

- Fix namespace: ElectronNET.Converter -> ElectronNET.API.Converter
- Replace JsonDocument.ParseValue() with JsonSerializer.Deserialize<ReleaseNoteInfo>()
  for cleaner, allocation-free object array parsing
- Fix Write(): empty ReleaseNoteInfo[] now serializes as [] instead of null
- Use Array.Empty<ReleaseNoteInfo>() in UpdateInfo default initializer
- Add tests: Serialize_WithEmptyReleaseNotes and Serialize_WithNullReleaseNotes
2026-05-09 18:17:59 +02:00
softworkz
6761119241 Update all model classes to Electron API 39.2 2025-11-22 02:24:32 +01:00
softworkz
8e7892ebd4 Fix whitespace formatting 2025-11-15 13:52:19 +01:00
Denny09310
4736bc640c fix: added usings, simplified imports, using JsonElement.Deserialize directly instead of JsonSerializer.Deserialize(JsonElement), removed some unused attributes 2025-11-09 15:15:52 +01:00
Denny09310
18b1317fc5 fix: ignore writing when value is null 2025-11-09 14:53:44 +01:00
Denny09310
71ced8db56 refactor: Migrated from Newtonsoft.Json to System.Text.Json, missing one test passing 2025-11-09 14:40:51 +01:00
Florian Rappl
c1e7b84ec6 Merge pull request #911 from Denny09310/develop
feat: updated 'TitleBarOverlay' property to be passed as object
2025-11-08 16:54:35 +01:00
Denny09310
9bb7dcfa62 fix: added WriteUndefined as there is Newtonsoft.Json 2025-11-08 16:49:33 +01:00
Denny09310
c0e711940d fix: don't write anything if value is null 2025-11-08 16:45:25 +01:00
Florian Rappl
d03458094b Added converter to improve object serialization 2025-11-08 16:38:36 +01:00
Denny09310
d79b73e960 fix: using newtonsoft.json instead of system.text.json for the converter 2025-11-08 11:21:39 +01:00
Denny09310
7927a95cb8 feat: enhance titleBarOverlay to accept both a boolean and an object 2025-11-08 11:14:33 +01:00
softworkz
3811b7ea20 ElectronNET.API: Re-add moved types 2025-10-13 14:36:31 +02:00
Florian Rappl
2367035acd Moved into src folder 2023-04-01 23:44:25 +02:00