Include 'core version' on commit

Hey Speckle team,

I think there is an added value for including the core version to the commits on a stream. Mainly for handling the received data in applications, the core version/object kit version is important, since we can then check when receiving a certain commit for any potential problems.

E.g. let’s say I have distributed an application that is based on the 2.5 connector (very old, I understand), and I am collaborating with my team. now since everyone can install their own speckle version, some might have installed version 2.5 and while others have the 2.11 version installed.

Now when I am receiving info, the objects supported in 2.11 are not yet supported in 2.5.
This can of course be handled in roughly 2 ways:

  1. Capturing exceptions when trying to create/receive objects
  2. Comparing the core version of the commit v. the current core version installed.

When we send data to someone else and they receive it, this is important to know, since there will be loss of data. I think troubleshooting then will be much easier to do as well.

A second goal for this is that when this is included, the possibility to enforce ‘version x or higher’ on streams is available. As the versions of the connectors can influence the handling and BIM process.

What are your ideas about it?

2 Likes

Hey @Dickels112 ,

This is indeed a very important topic; thanks for the thread!
In general, we’re trying to make any change in our Objects kit in a backwards-compatible way; for instance, instead of renaming a property, we would add a new one and deprecate the old.
This would guarantee that old commits still work in newer versions of our connectors.

Nevertheless, there are cases in which this is not possible. We are indeed brainstorming as a team on this very topic next week during a company retreat, so we’ll keep you posted!

1 Like