[blog] DeepSOIC explores realthunder's LinkStage3+Assembly3

Discussion about the development of the Assembly workbench.
User avatar
DeepSOIC
Posts: 7083
Joined: Fri Aug 29, 2014 12:45 am
Location: Saint-Petersburg, Russia

[blog] DeepSOIC explores realthunder's LinkStage3+Assembly3

Postby DeepSOIC » Tue Apr 23, 2019 9:40 pm

Hi! and finally, I began exploring realthunder's fork.

First impression - it's just crazy amount of work!


I thought, there were two revolutions:
1. Link + XLink + partial loading + new selection functionality
2. Toponaming
Now it turns out, there is another big big thing there:
3. Expressions
Turns out, realthunder essentially wrote a python interpreter :shock: :o :shock: :? :!:
And now we have a scripting language for expressions, which is limited, but quite powerful. I am yet to discover its true power and limitations, but so far, it looks incredible for power users, and probably a big trouble for main developers and basic users (the "security" issue).
I have my doubts of anyone being able to ever review this much code.

---Questions I feel like I'm ready to ask.---
(I actually have many many more questions, but they are probably not worth asking)

Why does Sketcher Export thing use PropertyStringList, not App::PropertyLinkSomethingSomething?

<DocumentObject>.getPaths(): throws NotImplementedError… why is it there, then?

How to create a ?shapebinder? for an assembled object, so as to make screw holes or slots or something like that? - use "green" shapebinder button on PD workbench... does it belong there, shouldn't it be in asm3 workbench?

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.15841 (Git)
Build type: Release
Branch: <I downloaded realthunder's release 0.9.1>
Hash: 362441873b984a4f169fd430f989aee1016a337e
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: Russian/RussianFederation (ru_RU)
User avatar
fosselius
Posts: 344
Joined: Sat Apr 23, 2016 10:03 am

Re: [blog] DeepSOIC explores realthunder's LinkStage3+Assembly3

Postby fosselius » Wed Apr 24, 2019 4:11 am

if you start going through it commit by commit you will see that there are great/big improvements all over the code base. isolating/cherry picking for a merge makes me sad as so much improvements will be left out. I rather see realthunder spend his time on rebasing against master.

but yea, as you stated, there might be a few design decisions that needs to be reviewed and accepted/reworked. But those will be long and potentially infected discussions and therefor i would like to have them after a complete merge, because that would force progress. now we will just discuss details to no end and nothing will ever get merged.
Mark Szlazak
Posts: 405
Joined: Tue Apr 04, 2017 6:06 pm
Location: Edmonton, Canada

Re: [blog] DeepSOIC explores realthunder's LinkStage3+Assembly3

Postby Mark Szlazak » Wed Apr 24, 2019 4:40 am

fosselius wrote:
Wed Apr 24, 2019 4:11 am
if you start going through it commit by commit you will see that there are great/big improvements all over the code base. isolating/cherry picking for a merge makes me sad as so much improvements will be left out. I rather see realthunder spend his time on rebasing against master.

but yea, as you stated, there might be a few design decisions that needs to be reviewed and accepted/reworked. But those will be long and potentially infected discussions and therefor i would like to have them after a complete merge, because that would force progress. now we will just discuss details to no end and nothing will ever get merged.
Ah yes, life in committee meetings. :lol:

Let the master paint his masterpiece with some more subtle help along the way.
User avatar
fosselius
Posts: 344
Joined: Sat Apr 23, 2016 10:03 am

Re: [blog] DeepSOIC explores realthunder's LinkStage3+Assembly3

Postby fosselius » Wed Apr 24, 2019 5:46 am

DeepSOIC wrote:
Tue Apr 23, 2019 9:40 pm
I actually have many many more questions, but they are probably not worth asking
The only dumb question is the one not asked. Out with it, most readers will not know a fraction of what you know, lets educate them with some Q&A.