name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Jee-Bee
Posts: 1969
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Wed Mar 27, 2019 11:03 am

because most users that replay here are users who are on this forum for some time...
or are developers who understand the risk of implementing such major changes
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Wed Mar 27, 2019 11:22 am

Jee-Bee wrote:
Wed Mar 27, 2019 11:03 am
because most users that replay here are users who are on this forum for some time...
or are developers who understand the risk of implementing such major changes
I may not see how this separation is supposed to mitigate the risk.
The realthunder work was tested by few users/developers in a configuration (fork) which includes both topological naming and LinkStage3.
The maturity is therefore assessed for that united code. In my opinion it is more probable that the separation will create new problems than fix them.
Jee-Bee
Posts: 1969
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Wed Mar 27, 2019 12:52 pm

maybe the linkstage3 branch is more mature as PDN was at merging...

the linkstage3 branch has the following situation This branch is 1232 commits ahead, 954 commits behind FreeCAD:master. + realthunder/FreeCAD_assembly3 had 302 commits with 71 issues.
According to some there are more than 100 000 lines of code that are changed.
how mature is that?
how hard is that to assess?

when pdn was merged in version 0.17 took almost 1.5 year after the merge. Do you think with more commits it would be flawless?
please be patient big changes take some time and accept that.
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby abdullah » Wed Mar 27, 2019 1:20 pm

wsteffe wrote:
Wed Mar 27, 2019 11:22 am
Jee-Bee wrote:
Wed Mar 27, 2019 11:03 am
because most users that replay here are users who are on this forum for some time...
or are developers who understand the risk of implementing such major changes
I may not see how this separation is supposed to mitigate the risk.
The realthunder work was tested by few users/developers in a configuration (fork) which includes both topological naming and LinkStage3.
The maturity is therefore assessed for that united code. In my opinion it is more probable that the separation will create new problems than fix them.
You see "an assembly system" and "a toponaming fix". But if you look at the code, you will see changes all around FreeCAD, which are needed for his implementation.

Divide and conquer may not always be the best solution, but it generally helps.

I have been looking only to the Sketcher parts of realthunder with the aim of integrating them. That is peanuts with the bulk of his work and still it is a huge load of changes.

Changes need to be peer reviewed to maintain a minimum level of quality and cohesion. Peer reviewing has an average effectiveness of around 50% in detecting bugs before integration.

There is this computer science paper indicating that people cannot think simultaneously on something involving more than 9 items at the same time, most people not being even able to manage 5. This is why creating individual commits for each feature, or even for each aspect of a feature that touches a different workbench or part of FreeCAD is important, creating separate on topic PRs help manage complexity and reduce risks during integration.

For example, there is the risk that in some parts, FreeCAD has evolved and arrived to diverging solutions in a module. Realthunder has rebased his branch several times, but last time I looked, there were unrebased parts. This is an integration and regression risk.

In any case, when Werner looks at it, he will say what he requires.
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Wed Mar 27, 2019 1:22 pm

I think that the new toponaming code is inside of linkstage3 while FreeCAD_assembly3 is built on top of linkstage3.
So the question here was if we should ask realthunder take his toponaming code out of linkstage3.
Jee-Bee wrote:
Wed Mar 27, 2019 12:52 pm
According to some there are more than 100 000 lines of code that are changed.
how mature is that?
how hard is that to assess?
If you are saying that linkstage3 (which contains most of the new code lines) is not mature for a merge this is an other point which I think can be answered only trough a deep testing of RT branch. According to what reported by freecad-heini-1 and referred by wmayer it seems that this is not true. But you may well object to these claims and I do not have sufficient elements to prove which is the actual maturity level of RT brench and how it compares with the master (which is also not free of problems).

To say that the linkstage3 branch should be depurated from the toponaming code, you should indicate an important issue which affects the current version of LinkStage3 and would disappear once it is separated from the toponaming code.
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Wed Mar 27, 2019 1:47 pm

abdullah wrote:
Wed Mar 27, 2019 1:20 pm
You see "an assembly system" and "a toponaming fix". But if you look at the code, you will see changes all around FreeCAD, which are needed for his implementation.
I think that RT already promised to separate the link part (which probably will include also the toponaming fix but I am not sure of that).
I hope that that part will be not so invasive as you are describinng is the whole LinkStage3 branch.
abdullah wrote:
Wed Mar 27, 2019 1:20 pm
For example, there is the risk that in some parts, FreeCAD has evolved and arrived to diverging solutions in a module. Realthunder has rebased his branch several times, but last time I looked, there were unrebased parts. This is an integration and regression risk.
RT has also said that, in the next weeks, he is going to realign his code with the Master. So I hope that also this obstacle may be removed.
abdullah wrote:
Wed Mar 27, 2019 1:20 pm
Changes need to be peer reviewed to maintain a minimum level of quality and cohesion. Peer reviewing has an average effectiveness of around 50% in detecting bugs before integration.
That in an ideal world. If there aren't enough experienced people to deeply review all the new code lines, I think that a test campaing could also be acceptable to demonstrate that any substantial regression has occurred. If it works well and it does all what you expect, it would be a pitty to trash it only because you may not understand it completely.
Jee-Bee
Posts: 1969
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Wed Mar 27, 2019 2:01 pm

At this moment there are i think two programmers that have a real clue about what's going on in FC. RealThunder and WMayer.
all other have no clue about the changes and their corresponding risks. i'm not, you not, freecad-heini-1 not.
If the most programmers say split up why to impugn that all the time?

ps. Do you remember that by the last release of Realthunder he said that he don't rebase to the current(that moment) master because every time it becomes more and more difficult.
I understand it... that's not what you want...
For sure i understand that you want faster... a few years back i had created new feature for FEM WB but at the moment i was almost ready for a merge. the file was changed so that my rebase failed and i thought i fixed it but i noticed after 3 times rebase and trouble i had screwed up and was unable to fix it. I could start all over again a few times started with it but never really finished :( .
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby abdullah » Wed Mar 27, 2019 2:55 pm

abdullah wrote:
Wed Mar 27, 2019 1:20 pm
Changes need to be peer reviewed to maintain a minimum level of quality and cohesion. Peer reviewing has an average effectiveness of around 50% in detecting bugs before integration.
That in an ideal world. If there aren't enough experienced people to deeply review all the new code lines, I think that a test campaing could also be acceptable to demonstrate that any substantial regression has occurred. If it works well and it does all what you expect, it would be a pitty to trash it only because you may not understand it completely.
[/quote]

It has been demonstrated that testing detects a different type of mistakes. Any decent quality assurance requires at least both.

Integrating and then realising that the architecture or the high level design was erroneous, despite working, is the worst thing that could happen. The cost of removing the offending code will increase as time from integration goes on. In projects that do not follow strong quality assurance the cost of debugging is between a 35% and a 50% of the total cost.

Peer review heavily mitigates most of these issues before they happen.

With all due respect, if I do not understand the code, the code is by definition of bad quality. Even if it were functional. If you belong to that set of developers please fork the project and continue your path on your own. I understand it is not your home, but I code here and I want to keep it in shape.

But this not the case of realthunder as far as I have seen.
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby abdullah » Wed Mar 27, 2019 2:58 pm

Jee-Bee wrote:
Wed Mar 27, 2019 2:01 pm
At this moment there are i think two programmers that have a real clue about what's going on in FC. RealThunder and WMayer.
all other have no clue about the changes and their corresponding risks.
Really? :o :o :o
Jee-Bee
Posts: 1969
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Wed Mar 27, 2019 3:34 pm

abdullah wrote:
Wed Mar 27, 2019 2:58 pm

Really? :o :o :o
I meant hole FC not parts of it. from yorik i have always the idea that he knows all from draft and arch and python but much less about c++.
If i missed others sorry :oops: