How does the oce update process for new opencascade releases works?

Skip to first unread message

Nov 28, 2017, 9:08:13 AM11/28/17
to oce-dev

The latest OpenCascade version is 7.2.0, which is a bit ahead of oce's 6.9.1. I'm quite interested on some of the newer bugfixes/features that went in OpenCascade recently, so I'm wondering what would be the steps/general approach for updating oce. Can you explain for example whether you merge the opencascade diff into oce, or you start from scratch and merge your patches on top (OCCT-patches branch perhaps)?

-- Gio

Dec 2, 2017, 11:31:47 AM12/2/17
to oce-dev

I made the switch from 6.8.0 to 6.9.1, so I can give you a little "heads up".

1) check out official branch.
2) delete everything.
3) extract occt official tarball
4) run script/commands to clean the repo. This is in the log of the official branch.
5) make commit and tag.

From here you have a choice of whether to use a git workflow or a patch workflow. denis started updating the patches for 6.9.0, but I don't think he finished. I never updated the patches for 6.9.1. So the 691patched_3 branch, that has the changes contained in the patches, is a little more current. I guess I will stop here as everything that follows will be dependent on your workflow. Does that answer your questions? You can view the schooling Denis gave us before the 6.9.1 update.

IMHO: I think the repo organization and workflow is poor. A better process will make updating to occt releases .... less hard. Here is what I suggest: The master branch should be an exact mirror of the occt master branch. Each official occt release should be applied from a diff to the master branch. All oce work is done in branches off master. No merges into master. The first commits of an oce release branch can be the results of the script/commands. As oce changes come in, they get applied to the current release oce branch. Then when it comes time to do an occt official update we have a more natural rebase --onto situation. The fact that the oce repo is not a remote to the occt repo, makes a typical merge workflow poor. Extra effort needs to be made to keep the oce changes completely separated from the occt code.

Reply all
Reply to author
0 new messages