Release notes for v0.19

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!
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: Release notes for v0.19

Post by triplus »

Hum, admittedly i didn't test this area extensively yet and as i didn't see any complaints in the PR oriented thread i assumed it's all OK. Now in addition i see the PR is still pending:

https://github.com/FreeCAD/FreeCAD/pull/3062

Will the pending PR address your concerns? Where was the changed behavior discussed?
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Release notes for v0.19

Post by vocx »

sliptonic wrote: Mon Mar 09, 2020 11:44 pm ... But that page says the changes aren't considered mature and aren't merged to upstream.
It's a bit tricky to explain.

There are already many changes done to the expression engine by realthunder. These changes are already part of the current master code as they were part of the LinkMerge branch that made it into FreeCAD. They basically allow you to use expressions in many entry fields and with many objects, which the older expression engine didn't allow.

However, in his own development branches, realthunder developed an even more advanced expression engine that is basically a subset of Python for use inside expressions. This is a major change. Since running arbitrary Python code as an expression is a significant security risk, this has not been merged; it hasn't even been submitted to FreeCAD. It is there somewhere in realthunder's repository, but not in the master code.

Development in Expression and Spreadsheet
So, can someone summarize what has actually changed about Expressions? What's still pending or likely to be merged into 0.19?
It's tricky. Realthunder explained it somewhere in his threads during the LinkMerge, but to find all information is going to be difficult.

PR #2475: Expression syntax extension

The primary issue right now is that the expressions field no longer auto-completes named Sketcher constraints. This was used by a lot of users but it doesn't currently work, so for many users this is a regression in behavior, even if internally the expression engine was "improved".

Realthunder submitted pull request #3062 to bring that behavior back, but it has been sitting in the queue for a while now. Hopefully Werner can look at it because this feature is very missed by users.

Why doesn't the auto-completer work? I don't remember the reason exactly. I don't want to misquote realthunder, but I think the idea is that the expression engine now works on all objects of the document, therefore auto-completing the names of all objects and all their properties would produce a very long list, and would be cumbersome to display. However, this is precisely addressed with #3062. As soon as that is merged, I think most users will get the old behavior back, and the new features of the expression engine will be easier to use.

List of pending features Dedicated Spreadsheet Workbench Maintainer/Devs needed
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: Release notes for v0.19

Post by Zolko »

sliptonic wrote: Mon Mar 09, 2020 11:44 pm So, can someone summarize what has actually changed about Expressions? What's still pending or likely to be merged into 0.19?
I think that now, the ExpressionEngine can handle other things as numbers: it can handle directly Placements for example (used a lot in Assembly4). Before, if you wanted to specify something in a Placement by the ExpressionEngine, you had to do it on all components (Placement.Base.x, Placement.Rotation.angle ...) and now you can handle Placements as a whole, and even make operations on them :

Code: Select all

obj_1.Placement * obj_2.Placement * obj_3.Placement ^ -1

What has (apparently and I think rightly-so) not been merged is the pseudo-python interpreter. As for the autocompletion of renamed sketcher constraints ... I use it in reverse: if I want a named variable I create it in the Variables object and use it in the ExpressionEngine of the sketcher parameter entry. I wonder how well the named sketcher constraints behaved when the toponaming hits the fan.
try the Assembly4 workbench for FreCAD — tutorials here and here
User avatar
uwestoehr
Veteran
Posts: 4961
Joined: Sun Jan 27, 2019 3:21 am
Location: Germany
Contact:

Re: Release notes for v0.19

Post by uwestoehr »

Here's a new feature:
https://forum.freecadweb.org/viewtopic.php?f=27&t=44169

Should I add it to the Wiki page by myself or is this done by a maintainer (e.g. Joel)?
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Release notes for v0.19

Post by vocx »

uwestoehr wrote: Wed Mar 18, 2020 1:19 am ...
Should I add it to the Wiki page by myself or is this done by a maintainer (e.g. Joel)?
You can do it yourself, just keep the general style.

Also, don't add the animated GIF, add a static image, and separately add a link to the GIF.
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
User avatar
uwestoehr
Veteran
Posts: 4961
Joined: Sun Jan 27, 2019 3:21 am
Location: Germany
Contact:

Re: Release notes for v0.19

Post by uwestoehr »

vocx wrote: Wed Mar 18, 2020 1:26 am You can do it yourself, just keep the general style.
Thanks, I'll do so.
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Release notes for v0.19

Post by Joel_graff »

Just catching up on release note maintenance. Everything noted (except the most recent feature above), has been incorporated into the release notes.

Looks like the notes have gone through a lot of changes in addition to my own work. Looking great!
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Release notes for v0.19

Post by vocx »

NormandC wrote: Wed Apr 10, 2019 11:39 am FreeCAD's StartPage has a list of available external workbenches.

Release notes are about what's new, not about what's working.

Cadquery has existed for years.

The wiki already has a list too. External Workbenches
I think it's finally time to remove the excess. Following Normand's comment, with which I agree, I have removed the last section (Other modules) of the release notes. This section contained old workbenches but no updates. It basically just mentioned the same workbenches that appeared in the Release_notes_0.18 page. That's not interesting.

We should present the new workbenches, not just rehash the old ones. All the new workbenches developed together with v0.19, and those older ones which actually had some updates (A2plus, Dodo, etc.), are already listed in the "Additional modules" section. If you want to add actual development news to one of the old workbenches (Curves, Nurbs, Silk, CadQuery, etc.) then add the information in its own sub-section under "Additional modules".

Remember that there is an improved external workbenches page where we can collect any new workbench that is developed, no matter if its included in the Addon Manager or not.
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: Release notes for v0.19

Post by triplus »

Joel_graff wrote: Thu Mar 19, 2020 2:22 am Just catching up on release note maintenance. Everything noted (except the most recent feature above), has been incorporated into the release notes.

Looks like the notes have gone through a lot of changes in addition to my own work. Looking great!
When the release notes become one of the highlight of the release. :)

@vocx

Sure feel free to remove such stuff, if any. As you can see, this was a rather straightforward operation at the end and it didn't make much sense to worry about it at beginning.

P.S. In addition it took people and not scripts to make such release notes. Again, thanks to everybody participating and especially to you @Joel_graff, for stepping up at the beginning of the development cycle.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Release notes for v0.19

Post by Kunda1 »

wmayer wrote: Since git commit 601ac707b207c6 it's possible to do:

Code: Select all

import MeshGui
MeshGui.convertToSTL("input_file.iv", "output_file.stl")
Reload the STL and save it into another format.
Source: https://forum.freecadweb.org/viewtopic. ... 26#p378083
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
Post Reply