Skip to content

Commit d4ed3bd

Browse files
committed
Add reports for March
- Improve C++ API documentation - Improve User Experience VarSets - OCCT liaison
1 parent 7758736 commit d4ed3bd

File tree

3 files changed

+235
-0
lines changed

3 files changed

+235
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
## Summary of Activities - Improve C++ API Documentation - March 2025
2+
3+
I have picked up this project again in March. I'm still waiting for DrLite to
4+
join the effort and to collaborate, but DrLite is busy with other things. I
5+
don't want to postpone any longer, so I'm simply moving forward, tagging DrLite
6+
if it is related to the other project.
7+
8+
Issues/PRs:
9+
10+
### Umbrella Issue: [Doc] Quality of C++ API documentation of package App is lacking
11+
12+
For the work in this month, I could define concrete issues and related PRs, but
13+
in the next stage I will improve the documentation of various files. For that
14+
stage it does not make sense to create separate issues. Because of this, I
15+
created this umbrella issue to relate all those PRs.
16+
17+
- [Issue](https://github.com/FreeCAD/FreeCAD/issues/20503)
18+
19+
### Old version of Doxygen
20+
21+
The configuration uses an old Doxygen. This required some discussion, but
22+
since I'm currently the only one working on it, it makes sense to update
23+
doxygen to my version.
24+
25+
- [Issue (closed)](https://github.com/FreeCAD/FreeCAD/issues/20365)
26+
- [PR (merged)](https://github.com/FreeCAD/FreeCAD/pull/20474)
27+
28+
### Structural Doxygen warnings
29+
30+
These are warnings that are not about documentation but about incorrect
31+
nesting, issues that prevent the documentatoin to render properly.
32+
33+
- [Issue (closed)](https://github.com/FreeCAD/FreeCAD/issues/20366)
34+
- [PR (merged)](https://github.com/FreeCAD/FreeCAD/pull/20428)
35+
36+
### Restructure topics/modules for App
37+
38+
Topics or called modules in old versions (things that are created by the
39+
`group` command) are highly inconsistent in general. Solving it for all of the
40+
documentation is out of scope for this project, but it was solved for the `App`
41+
namespace.
42+
43+
- [Issue (still open for anything other than `App`](https://github.com/FreeCAD/FreeCAD/issues/20438)
44+
- [PR (merged)](https://github.com/FreeCAD/FreeCAD/pull/20484)
45+
46+
### CMake issues for generating documentation
47+
48+
Regenerating the documentation has issues that need to be solved. The issue
49+
and PR need a bit of discussion but there are no real blockers for merging.
50+
51+
- [issue](https://github.com/FreeCAD/FreeCAD/issues/20478)
52+
- [pr](https://github.com/FreeCAD/FreeCAD/pull/20479)
53+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
## Summary of Activities - VarSet User Experience - March 2025
2+
3+
This project has (finally) started at the end of this month, although I did
4+
some preparations in January. I wanted to start earlier, but I gave priority
5+
to the OCCT Liaison work.
6+
7+
By the way, I noticed that I don't have an official contract for this project
8+
as I have for my other projects.
9+
10+
### Update the project page
11+
12+
I've updated the [project page](https://github.com/orgs/FreeCAD/projects/30/views/1).
13+
14+
### Visibility icon for VarSet
15+
16+
This is technically not limited to VarSets, but I can try to fix this anyway.
17+
I contributed to the discussion in [issue
18+
#16816](https://github.com/FreeCAD/FreeCAD/issues/16816).
19+
Based on my suggestion there I created [PR
20+
20573](https://github.com/FreeCAD/FreeCAD/pull/20573) as an alternative to
21+
Hyarion's solution, but I came to the conclusion that this implementation isn't
22+
satisfactory as well. I will follow up next month.
23+
24+
### Units in the VarSet dialog
25+
26+
Units in the editor for the value are not shown properly as reported in [issue
27+
#15557](https://github.com/FreeCAD/FreeCAD/issues/15557).
28+
I've worked on this issue, but haven't been able to make it work.
+154
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
## Summary of Activities - OCCT Liaison - March 2025
2+
3+
First of all, thank you very much to all of the community for offering me this
4+
position. In this and subsequent files, I will report the progress in my role
5+
as OCCT Liaison. This month was primarily focused on setting myself up.
6+
7+
### Contact with Dmitrii: Data Exchange
8+
9+
Yorik introduced me to Dmitrii Pasukhin from OCCT based on [the forum topic on
10+
Data Exchange (DE)](https://forum.freecad.org/viewtopic.php?t=95294). I tried
11+
to get an understanding of Dmitrii's offer and studied a [DE wrapper
12+
sample](https://github.com/dpasukhi/DE_Wrapper-Sample) from Dmitrii to
13+
understand the technology and how it could integrate.
14+
15+
My understanding is currently:
16+
17+
FreeCAD remains as open as it is. There can be a commercial (though possibly
18+
still open source) addon that may load proprietary libraries for data exchange.
19+
The addon will "stream" the resulting files to FreeCAD which means that the
20+
interface with FreeCAD is minimal and most likely already exists.
21+
22+
The addon is only for users who want to pay for importing and exporting
23+
advanced file formats, while FreeCAD remains as it is.
24+
25+
This will need follow up in the next month.
26+
27+
### Sorting through issues
28+
29+
A large task was to find a way to organize all the OCCT-related issues. Max
30+
and luzpaz have already prepared this to a high degree with the OCCT label. I
31+
created a [GitHub project](https://github.com/orgs/FreeCAD/projects/32/views/1)
32+
where I and others can track the OCCT-related issues. Max and I have now an
33+
understanding of how to notify me of new OCCT issues.
34+
35+
A next task is to study a DRAW harness created by Brad McClean.
36+
37+
### Building FreeCAD
38+
39+
An important step is to set up FreeCAD such that I can easily switch between
40+
various versions of OCCT and can debug OCCT.
41+
42+
### Setting up a channel on Discord
43+
44+
I created a channel on Discord to discuss OCCT-related topics and for people to
45+
find me there. The first discussion is the next section.
46+
47+
### Discussion on OCCT bug reporting and versions
48+
49+
I noticed that various OCCT issues reported use different OCCT versions. In
50+
some cases, the issue does not appear in newer OCCT versions. This makes it
51+
hard to decide what to do with these issues.
52+
53+
On top of that, FreeCAD maintains its own version with Blobfish patches on it.
54+
All this has been discussed with Oursland and Blobfish himself weighed in as
55+
well, stating that we should not use his patches for FreeCAD.
56+
57+
We agreed that we try to officially support only one version of OCCT and bug
58+
reports on OCCT should use this version. Currently, there is a dependency
59+
problem preventing us to switch to 7.9.0 as of yet.
60+
61+
This will need follow up in the next month.
62+
63+
### Present myself in the DEV meeting
64+
65+
On Saturday 15 March I presented myself as the OCCT Liaison. Since the minutes
66+
are a bit sparse, I will write a summary here:
67+
68+
#### About myself
69+
70+
- I'm honored to have gotten this position. I try to be very approachable by
71+
the community and I hope to be able to be a bridge between OCCT and FreeCAD.
72+
- I hope that the interaction between OCCT and FreeCAD both help FreeCAD and OCCT.
73+
- I'm highly motivated to improve FreeCAD and since various issues rely on
74+
OCCT, I'm motivated to improve OCCT as well. I want to improve FreeCAD
75+
because I believe that technology to design things should be widely
76+
available.
77+
78+
#### OCCT Versions
79+
80+
We discussed the OCCT version for FreeCAD and the API stability that OCCT 8
81+
will present. We touched on the Blobfish patches. An valid issue is that if
82+
FreeCAD officially supports 7.9.0, then the Ubuntu version is likely outdated.
83+
We don't have a very good solution for that, FreeCAD will may simply have more
84+
issues than the official version.
85+
86+
#### STEP AP242 ed1/2/3/4 support
87+
88+
This is an issue from Max and he discussed it mostly. Having these file
89+
formats most likely means that we need support in the Assembly workbench and
90+
improved GD&T support in FreeCAD. The biggest problem is that we need
91+
developers that want to work on this.
92+
93+
##### GitHub Project
94+
95+
I presented my project and the fillet/chamfer problems are of course well-known
96+
and perhaps most pressing. Chris mentioned that having this fixed by the OCCT
97+
team by hiring them is incredibly expensive, too expensive for the FPA
98+
currently.
99+
100+
#### Plan
101+
102+
My plans are roughly for the coming year:
103+
104+
- Improve the project
105+
- Study the forum for understanding earlier attempts to organize OCCT-related
106+
issues
107+
- Study existing DRAW tests
108+
- Become an OCCT developer
109+
- Discuss how to test bugs
110+
- Talk to other OCCT users
111+
- Talk to OCCT
112+
113+
### Set myself up for a high number of GitHub notifications
114+
115+
I noticed that I can't keep up with all the GitHub notifications that I
116+
receive, so I worked on improving processing the GitHub notifications. I
117+
believe I have a process that more or less works now.
118+
119+
### Suggest a process for a 10 year roadmap
120+
121+
In the FPA meeting there was a discussion on corporate sponsors. Brad made the
122+
point that if we want to acquire sponsoring it has to be worth something for
123+
the corporate sponsors. I believe it would be beneficial to be able to offer a
124+
realistic outlook, for example for a period of 10 years, to ensure that the
125+
corporate sponsors know what they are sponsoring. This can also make
126+
priorities clear for the FPA and where funding should be directed to.
127+
128+
As a concrete example, I consider OCCT a close partner, so they may become a
129+
sponsor of FreeCAD. This could not only be money, but they could also decide
130+
to invest in fixing fillets or for example supporting STEP AP242 ed1/2/3/4.
131+
Dmitrii has already shown interest in the latter topic, but I noticed that
132+
FreeCAD needs support for this as well. This means that if we find the route
133+
towards STEP AP242 important, then FreeCAD should also invest in support for
134+
this. Otherwise, the efforts of OCCT towards this direction cannot "land" in
135+
FreeCAD. Having a roadmap as an outlook to the future can show commitment from
136+
the FreeCAD community and can help with convincing partners such as OCCT to
137+
invest in this.
138+
139+
I have discussed this with Brad and one of the plans is to hold a developers
140+
meeting with this as topic. My next step is to reach out to some people in the
141+
community to discuss the plan.
142+
143+
### Check forum on OCCT issues
144+
145+
I read through all the forum posts on OCCT. The forum makes it very hard to
146+
get an overview, at least for me, but some community members were keeping very
147+
well track of the issues. I opted for a GitHub project that gives all kinds of
148+
ways to present the issues.
149+
150+
As a follow up, I want to participate on the forum.
151+
152+
### Register as OCCT developer
153+
154+
I registered myself as an OCCT developer by signing their CLA.

0 commit comments

Comments
 (0)