View Issue Details

IDProjectCategoryView StatusLast Update
0004119ExpressionsBugpublic2021-02-06 06:30
Reportercbruner Assigned Torealthunder  
PriorityhighSeveritycrashReproducibilityalways
Status assignedResolutionopen 
Platformlinux-mintOSlinuxOS Version19.2
Product Version0.18 
Target Version0.20 
Summary0004119: spaces in names cause fail to parse expressions.
DescriptionForum discussion. https://forum.freecadweb.org/viewtopic.php?f=3&t=39153
OS: Linux Mint 19.2
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.16131 (Git) AppImage
Build type: Release
Branch: (HEAD detached at 0.18.3)
Hash: 3129ae4296e40ed20e7b3d460b86e6969acbe1c3
Python version: 3.6.7
Qt version: 5.6.2
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/Canada (en_CA)
Steps To ReproduceFollow the Freecad tutorial video.
https://www.youtube.com/watch?v=C1JG6l1uIJw&t=773s at 18:06 he has created a master sketch with a rectangle and a line, which is called "HeightOfBlock".
I typed "Height of Block", which led to subsequent errors of "fail to parse expressions" Later in the tutorial
Figuring out the root cause was difficult and wasted many hours I had dedicated to learning freecad.

It can be resolved by several ways.
1. Give an error when spaces are used in names. (Either use them or don't, but don't accept them and then complain about it!)
2. Substitute "_" for " " whenever a name is added. This resolves the problem pretty simply and allows for names that look like they have spaces without actually having spaces.
3. Change the parser to handle names with spaces. (I think this is the worst solution).
Additional InformationThe Failure to parse expressions error occurred when trying to use the part, but it seemed to be referring to a cyclic redundancy problem, not the actual root cause.
Tagsexpressions
FreeCAD Information

Activities

cbruner

2019-09-09 13:40

reporter   ~0013561

I forgot to mention a crash which occurred due to this bug. I believe this to be a separate issue, but possibly related so I'm mentioning it here.

From the forum notes:
I started deleting the CC and noticed that the master was grey now, with a new sketch001 under it. Deleted that and got a segfault.

Show.TempoVis.isIn3DView error: Object has been removed from documentViewProviderSketch::setEdit: visibility automation failed with an error:
Traceback (most recent call last):
File "<string>", line 7, in <module>
File "/tmp/.mount_freecatHpNXG/usr/Mod/Show/TempoVis.py", line 118, in hide
self.modifyVPProperty(doc_obj_or_list, 'Visibility', False)
File "/tmp/.mount_freecatHpNXG/usr/Mod/Show/TempoVis.py", line 99, in modifyVPProperty
if not hasattr(doc_obj.ViewObject, prop_name):
<class 'RuntimeError'>: Object has been removed from document
App::Document::recompute(): cyclic dependency detected
Exception (Sat Sep 7 13:15:07 2019): Invalid constraint
App::Document::recompute(): cyclic dependency detected
App::Document::recompute(): cyclic dependency detected
Exception (Sat Sep 7 13:15:28 2019): Invalid constraint
App::Document::recompute(): cyclic dependency detected
Program received signal SIGSEGV, Segmentation fault.
/tmp/.mount_freecatHpNXG/AppRun: line 12: 12528 Segmentation fault (core dumped) ${HERE}/usr/bin/FreeCAD "$@"

graffy

2019-12-30 17:28

reporter   ~0013962

Can you describe a quick example that reproduces the error? I know you referenced the video you were following at the time, but it would help to have a simple example that can be reproduced in a minimum number of steps.

cbruner

2019-12-31 05:40

reporter   ~0013963

Last edited: 2019-12-31 05:49

Create a sketch call it "Master" with a line in it.
Give the line a dimension and the line "Height of block". https://youtu.be/C1JG6l1uIJw?t=1079

Create a new sketch (from the same body that the Master was created from).
Put a properly constrained square on this new sketch. Then Pad it.
The length of the pad is ="Master.Height of block"
I think this will show the error.
You can name things with spaces in them, but can't use those names to reference things.
Hope this is clear enough.

Kunda1

2020-01-02 14:19

administrator   ~0013967

Moved to 'Expressions' category

realthunder

2020-02-27 04:05

developer   ~0014184

Will be solved by this PR. See here for details.

yorik

2022-03-03 13:55

administrator   ~0016817

This ticket has been migrated to GitHub as issue 5983.

Issue History

Date Modified Username Field Change
2019-09-09 04:41 cbruner New Issue
2019-09-09 10:57 openBrain Tag Attached: expressions
2019-09-09 13:40 cbruner Note Added: 0013561
2019-12-30 17:28 graffy Note Added: 0013962
2019-12-31 05:40 cbruner Note Added: 0013963
2019-12-31 05:49 cbruner Note Edited: 0013963
2020-01-02 14:18 Kunda1 Project FreeCAD => Expressions
2020-01-02 14:19 Kunda1 Note Added: 0013967
2020-01-02 14:20 Kunda1 Target Version => 0.19
2020-01-02 14:20 Kunda1 Status new => confirmed
2020-01-02 14:20 Kunda1 Priority normal => high
2020-01-02 14:20 Kunda1 Severity major => crash
2020-02-27 04:05 realthunder Note Added: 0014184
2020-02-27 18:08 Kunda1 Assigned To => realthunder
2020-02-27 18:08 Kunda1 Status confirmed => assigned
2021-02-06 06:30 abdullah Target Version => 0.20