Skip to content

fix: Re-add oauth2 to serialized structs - #8464

Merged
Hocuri merged 3 commits into
mainfrom
hoc/readd-oauth2-to-serialized-structs
Jul 25, 2026
Merged

fix: Re-add oauth2 to serialized structs#8464
Hocuri merged 3 commits into
mainfrom
hoc/readd-oauth2-to-serialized-structs

Conversation

@Hocuri

@Hocuri Hocuri commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator

fix #8463

Followup to #8431: Re-dd oauth2 to the two structs that serialized and sent over the wire. This solves an incompatibility problem where transports could not be synced to older versions of DC, and profiles could not be transferred, because the deserializer expected the field to be present.

I now added #[serde(default)], so that with this PR, Delta Chat will be compatible with both v2.56 and with older versions.

Not tested yet.

Followup to #8431: Re-dd `oauth2` to
the two structs that serialized and sent over the wire. This solves an
incompatibility problem where transports could not be synced to older
versions of DC, and profiles could not be transferred, because the
deserializer expected the field to be present.

I now added `#[serde(default)]`, so that with this PR, Delta Chat will
be compatible with both v2.56 and with older versions.

Not tested yet.

@missytake missytake left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This means that backups from 2.56 can be imported - but backups from this branch can not be imported into 2.56 I assume?

@Hocuri

Hocuri commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator Author

I didn't test it yet, but theoretically this should be compatible with both 2.56 and older versions in both directions.

@Hocuri

Hocuri commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator Author

I tested that with this PR, it works fine to transfer a newly created profile from and to 2.56 and 2.53.1 in both directions.

Note the following will still fail:

  • In 2.56, create a profile or add a transport to an existing profile
  • Update to this PR here
  • Transfer the profile to <2.56

I.e. if any transport was added in 2.56, then transferring the profile to older versions will fail, even if you updated to this PR here in the meantime.

@r10s r10s left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for the quick fix.

@Hocuri
Hocuri merged commit 98a902b into main Jul 25, 2026
30 checks passed
@Hocuri
Hocuri deleted the hoc/readd-oauth2-to-serialized-structs branch July 25, 2026 12:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Relay added on Android 2.56 is not synchronized to Desktop 2.53

3 participants