[meeting minutes] developer meeting on how to integrate Toponaming

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
lamikr
Posts: 14
Joined: Fri Jul 08, 2022 11:44 pm

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by lamikr »

C_h_o_p_i_n wrote: Wed Jul 20, 2022 2:06 pm Please jump over your shadows - It just need to be integrated.

Just my 2 cents, regards, Stefan
One common saying is that "Perfect is the enemy of good" applies here very well. Realthunder has implementation that is superior compared to current implementation and should therefore be merged by merit base as fast as possible to master. I am little worried seeing a lot of "non-toponaming" development going to master as that may now add extra effort to port the toponaming to latest codebase. What I have understood from Realthunders messages he is actually already doing that but as the master is moving target it would be good to get at least some version of core-code already in if possible to do it in a way that it does not break anything.

And usually the best way to learn the "new code" happens automatically when you debug it, so I would not put too much effort for the requirements that everybody must understand that code before the merge if it's just tested to work.

Once one implementation is in, it's also easier for somebody to think some sensible interfaces if there raises a need for having for example alternative algorithms for solving tpn problems in future. So just hope that realthunders tpn implementation just goes in soon.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by Kunda1 »

what would bring stability to this thread is if we heard from @realthunder directly. RT, would you mind sharing where you're at in the process of the merge?

Edit: last I spoke with RT was about a week ago. I asked him how things are going. He said he's been working on the merge but there are a lot of cosmetic changes that has been made to the code upstream and that, I was under the impression, was delaying code submitting
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
realthunder
Veteran
Posts: 2190
Joined: Tue Jan 03, 2017 10:55 am

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by realthunder »

Yes, I am working on merging the toponaming stuff these few weeks.

My original approach was try to sync my branch to the master first, and then cherry-pick topo naming related stuff to the upstream topo naming branch, like I did last time. But with about a week into it, I feel it would take far too long time to accomplish it. So now, I am rebasing my old topo naming PR with upstream, and at the same time cherry-picking recent related topo naming fix from my branch. This is a very tedious process, because I am essentially repeating myself, and because all those cosmetic changes like spacing, order of header files, etc. And worse, I'll have to eventually go over the same tedious process at least four times to fully merge with upstream. What I am doing now counts as the first. Second time is when my branch syncs to upstream. Third time, upstream topo naming branch gets into the master. Forth time, my branch again sync to upstream after topo naming landed.

Oh, and also, the development team (except me obviously) wants the topo naming to get into the upstream branch piece by piece. So don't expect it to be ready soon. Although I am preparing it as a whole on my side right now, I'll still push it slowly to upstream branch once it's ready.

And last, well, it is a tedious process, you know, as in some times I find myself almost falling asleep while looking at all those changes. So I may just go back to my branch and fix some bugs, or add something new, just for the kicks.
Try Assembly3 with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
lamikr
Posts: 14
Joined: Fri Jul 08, 2022 11:44 pm

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by lamikr »

realthunder wrote: Fri Jul 22, 2022 12:54 am Yes, I am working on merging the toponaming stuff these few weeks.

This is a very tedious process, because I am essentially repeating myself, and because all those cosmetic changes like spacing, order of header files, etc. And worse, I'll have to eventually go over the same tedious process at least four times to fully merge with upstream. What I am doing now counts as the first. Second time is when my branch syncs to upstream. Third time, upstream topo naming branch gets into the master. Forth time, my branch again sync to upstream after topo naming landed.

Oh, and also, the development team (except me obviously) wants the topo naming to get into the upstream branch piece by piece. So don't expect it to be ready soon. Although I am preparing it as a whole on my side right now, I'll still push it slowly to upstream branch once it's ready.
I believe that the first round is hardest as it involves the splitting of code to pieces and cleaning it up. But if you manage to get even essential parts submitted first, then I believe it's easier also for other to help and rebase/do small fixes just to adapt with other changes in master.

And every patch that get's merged, will then reduce the amount of remaining lines that needs to be rebased :-)

Hope, you doing well, don't get too tired.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by Kunda1 »

realthunder wrote: Fri Jul 22, 2022 12:54 am My original approach was try to sync my branch to the master first, and then cherry-pick topo naming related stuff to the upstream topo naming branch, like I did last time. But with about a week into it, I feel it would take far too long time to accomplish it. So now, I am rebasing my old topo naming PR with upstream, and at the same time cherry-picking recent related topo naming fix from my branch. This is a very tedious process, because I am essentially repeating myself, and because all those cosmetic changes like spacing, order of header files, etc. And worse, I'll have to eventually go over the same tedious process at least four times to fully merge with upstream. What I am doing now counts as the first. Second time is when my branch syncs to upstream. Third time, upstream topo naming branch gets into the master. Forth time, my branch again sync to upstream after topo naming landed.
That is so intense. I really hope you can persevere through the process. Thank you so much for getting back to us and letting us know where you're at. I had a feeling that you were in the 'thick of it' and just trying to get it done. Let us know ho we can help. Thank you again!

Edit: is there any orientation or request you have of other developers, specifically about working on changes to master? What would be counterproductive for you (obviously more cosemtic changes, right?)
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
galou_breizh
Posts: 436
Joined: Wed Sep 15, 2010 9:38 am

Re: [meeting minutes] developer meeting on how to integrate Toponaming

Post by galou_breizh »

looo wrote: Sun Jul 17, 2022 4:26 pm It would be awesome to have a nice and clean interface so we can try different algorithm for the topo-naming issue. As far as I understand there is not "the one and only solution" which solves all the topo-naming issues. Maybe we could also try some machine-learning algorithm and train them by specific files where a defined solution exists. Not sure if this makes a lot of sense.
I also suggested something like this a long time ago. I think that it'd be a good time to implement this now (but have no time for it, unfortunately).

Gaël
Post Reply