Skip to content

Conversation

@Jack-Keene
Copy link

No description provided.

@snowplowcla snowplowcla added the cla:yes [Auto generated] Snowplow Contributor License Agreement has been signed. label Mar 20, 2025
@Jack-Keene Jack-Keene changed the base branch from master to release/0.8.2 March 20, 2025 10:08
BinaryFormatter binFormatter = new BinaryFormatter();
MemoryStream mStream = new MemoryStream();
binFormatter.Serialize(mStream, dict);
MessagePackSerializer.Serialize(mStream, dict);
Copy link
Contributor

Choose a reason for hiding this comment

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

Is the binary format of BinaryFormatter and MessagePackSerializer compatible? I assume it's not, so that would mean this is a breaking change as the serialized session information won't be readable anymore (we might need to add some tests to see what happens if MessagePackSerializer tries to read a binary file serialized using BinaryFormatter).

Is there no way we can keep the deprecated BinaryFormatter?

Copy link
Author

Choose a reason for hiding this comment

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

The issue with the BinaryFormatter seems to be that its insecure as it will work on any data type. There's more info here, but it sounds like there's no option to keep using it.

I suppose given we've not reached a major release for the Unity tracker a breaking change isnt the end of the world - but adding some tests to check the differences is probably sensible

Copy link
Contributor

@matus-tomlein matus-tomlein Mar 24, 2025

Choose a reason for hiding this comment

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

Yeah, I agree the tracker deserves a major version, but that increases the scope of this task much more.

I have tried to run the Tests project in Unity Hub and now instead of just including the dll for SnowplowTracker and LiteDB, I had to extra 5 dlls for MessagePack and it's dependencies. Since we currently don't publish the tracker through a package repository, this complicates the installation process quite a bit for users. I'd prefer if instead of using MessagePack, we used something built into .net like JSON serialization.

If we are doing a major release, we should also do a few more updates, like finally renaming Unstructured to SelfDescribing and publishing to a package manager. We also had a plan to unify the .NET and Unity trackers so that we don't have to maintain them separately.

I think we don't have the capacity to do this now and frankly fixing the CI actions is not a good enough reason to rush a major version out – it doesn't break anything for our users, it's just the CI that is broken. So I would suggest delaying this work into a proper new major version of the tracker which we can plan what it should contain.

Copy link
Author

Choose a reason for hiding this comment

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

As discussed - I've just stuck to updating the CI action, we can do the major version once we have capacity!

Copy link
Author

Choose a reason for hiding this comment

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

I'll update the release branch name too

@Jack-Keene Jack-Keene force-pushed the issue/85-bump-ubuntu-version branch from 825a4a1 to e7cb7bd Compare March 27, 2025 14:09
@Jack-Keene Jack-Keene force-pushed the issue/85-bump-ubuntu-version branch from e7cb7bd to b2fd5c9 Compare March 27, 2025 14:10
Copy link
Contributor

@matus-tomlein matus-tomlein left a comment

Choose a reason for hiding this comment

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

LGTM, please make a task to update the .NET version and replace BinaryFomatter so that we don't forget!

@Jack-Keene Jack-Keene merged commit c96111f into release/0.9.0 Mar 28, 2025
1 check failed
@Jack-Keene Jack-Keene deleted the issue/85-bump-ubuntu-version branch March 28, 2025 09:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla:yes [Auto generated] Snowplow Contributor License Agreement has been signed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants