Tox versioning workflows used by Derivative

Hello,
please I would like to ask how do you guys at Derivative handle your tox workflows in terms of versioning, saving, etc. I like the way most of your components have some parameter with the version information and I wanted to ask how do you increment this number? Do you do that manually before saving your tox files or do you have some automated setup for saving and version incrementing?

image

I have looked at your /sys/TDResources/docsHelper and it looks like a great component to handle Help pulse along .tox Save Build number. However I haven’t found there anything regarding version number. Any information about your tox workflows would be great, thanks! :slight_smile:

Hey @monty_python,

In 2022.20k builds, most COMPs if not all should have an About page with Version, Help, .tox Save Build.

We manually change the Version parameter and the reason is that it is difficult to automate a version change when it is also based on the content of what we commit / save.

The version format is following the logic Major.Minor.Hotfix. If a user is reporting an issue and we do a fix, it will likely trigger a hotfix increment. If we bring in a new feature or release a whole collection of stability improvements, it’s likely a Minor increment. Major is usually reserved for… major changes / refactor, breaking changes… etc

The .tox Save Build is updated with one of our internal tools when we re-export our palette components for release. This is useful to avoid loading a 2022 .tox in a 2021 build, as an example (although you would get a dialog / warning doing this in most cases) and for us / users to have a quick view of when / where the COMP was last exported from.

Best,
Michel

1 Like

Great thank you very much for information. This makes me wonder whether you also internally use the version number in your tox filename? Do you keep backups of older tox versions in your file structure, or do you rely purely on version control in this matter?

May I also ask how is the Update System supposed to work? I have noticed some components have Update pulse that is controlled by TDUpdateSystem. Thanks

Personally, I have a backup folder but it is ignored in the git repository, and I rarely go back to it. We commit the .tox files to our git repository for the palette. So you could say it’s all purely version control with git.

It’s for internal use only and will go away in the future.

Best,
Michel

Great, thank you very much for info :slight_smile:

Maybe one more question - please is it recommended for users to follow this practice (using docsHelper same as Derivative does)? I can’t think of a reason why it shouldn’t be, but I wanted to ask just in case I am missing something. Thanks :slight_smile:

I don’t think it’s necessary for you to use docsHelper.

You can setup the About page and parameters in a similar fashion though. The Help page pulse with docsHelper would lead to the wiki though, rather than your own doc.

I’d add a new par as well like “Developer” so that you identify it is not shipped with the Palette and avoid confusion.

Best,
Michel

All right, thank you very much once again :slight_smile:

1 Like