Release of v0.17

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
User avatar
NormandC
Posts: 18534
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Release of v0.17

Postby NormandC » Mon Feb 05, 2018 5:25 am

As a quick test, I saved the Third Party Libraries page as simple HTML on my desktop.

Then I ran the following command in the python console:

Code: Select all

WebGui.openBrowser('file:///home/normand/Bureau/freecad-about-license.html')
This opened the local html file in FreeCAD's main window. Seems easy enough to run a similar command from a link in About FreeCAD.

Of course it's rather ugly and badly in need of CSS styling. :D
Attachments
FC_local_license_test.png
FC_local_license_test.png (187.62 KiB) Viewed 879 times
gkv311
Posts: 5
Joined: Mon Oct 24, 2016 8:02 am

Re: Release of v0.17

Postby gkv311 » Mon Feb 05, 2018 5:46 am

yorik wrote:
Fri Feb 02, 2018 3:54 pm
I added this to the license page of the About dialog:

Would that be enough? I couldn't find any other open-source app that cites all the third-parties libraries used in its about dialog...
Meeting license terms might be painful, especially when using a lot of external libraries.
Here is one extra guide useful for following LGPL:
https://ffmpeg.org/legal.html

In my case, sView lists the major libraries in About dialog, refer them on application about page on web site and tries to elaborate license terms on git (LICENSE file as root information + actual license text files placed near by).
sview_about.png
Licenses within About dialog (sView)
sview_about.png (347.73 KiB) Viewed 878 times
Thus, Firefox style, which Open CASCADE CAD Assistant tried to follow (e.g. dedicated HTML page coming with application listing all used components), looks more appropriate for big projects in my opinion. Still, the foundation frameworks of application worth mentioning directly on About page.

This, however, does not answer how to mention 3rdparties of 3rdparties of 3rdparties - almost every library in OSS world nowadays depends on a lot of other projects. It is not that big for Open CASCADE Technology, but it grows big for such things like Qt.
gAdlike
Posts: 20
Joined: Wed Nov 01, 2017 5:35 am

Re: Release of v0.17

Postby gAdlike » Mon Feb 05, 2018 8:26 am

Third party page looks great but it is better to distribute a copy of license with the software.
User avatar
yorik
Site Admin
Posts: 11510
Joined: Tue Feb 17, 2009 9:16 pm
Location: São Paulo, Brazil
Contact:

Re: Release of v0.17

Postby yorik » Mon Feb 05, 2018 10:22 am

Normand's solution seems good, but we would need a script that runs at build time to fetch that page from the wiki everytime, to make sure it is using the most up-to-date version. Plus, if FreeCAD is built without webkit, that page will be unavailable.

But since OCC is by far our most important third-party library, and, I believe, the only one that doesn't use standard LGPL (it has an additional clause), we might as well simply add the full OCC license text in our about dialog (an extra tab maybe?). That would be an easy way to solve too... Would that be OK for everybody?
gAdlike
Posts: 20
Joined: Wed Nov 01, 2017 5:35 am

Re: Release of v0.17

Postby gAdlike » Mon Feb 05, 2018 10:52 am

It will be OK.
wmayer
Site Admin
Posts: 14775
Joined: Thu Feb 19, 2009 10:32 am

Re: Release of v0.17

Postby wmayer » Mon Feb 05, 2018 1:44 pm

yorik wrote:
Mon Feb 05, 2018 10:22 am
Normand's solution seems good, but we would need a script that runs at build time to fetch that page from the wiki everytime, to make sure it is using the most up-to-date version. Plus, if FreeCAD is built without webkit, that page will be unavailable.

But since OCC is by far our most important third-party library, and, I believe, the only one that doesn't use standard LGPL (it has an additional clause), we might as well simply add the full OCC license text in our about dialog (an extra tab maybe?). That would be an easy way to solve too... Would that be OK for everybody?
I wouldn't try to fetch the wiki page at build time because you have almost no control if its content has changed in the meantime and if it's still correct. Because the license file will be changed very rarely I vote to add an extra static file to the repository.

Over the weekend I looked closer at how CAD Assistant solved it and I think doing the same way would be the easiest. In a local branch I started to work on it.
User avatar
NormandC
Posts: 18534
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Release of v0.17

Postby NormandC » Tue Feb 06, 2018 3:57 am

wmayer wrote:
Mon Feb 05, 2018 1:44 pm
Because the license file will be changed very rarely I vote to add an extra static file to the repository.
That's what I originally had in mind. But I didn't think about what would happen if FreeCAD isn't compiled with webkit. I think the current 0.16 in the Debian repo is like that...
wmayer
Site Admin
Posts: 14775
Joined: Thu Feb 19, 2009 10:32 am

Re: Release of v0.17

Postby wmayer » Tue Feb 06, 2018 8:38 am

NormandC wrote:
Tue Feb 06, 2018 3:57 am
wmayer wrote:
Mon Feb 05, 2018 1:44 pm
Because the license file will be changed very rarely I vote to add an extra static file to the repository.
That's what I originally had in mind. But I didn't think about what would happen if FreeCAD isn't compiled with webkit. I think the current 0.16 in the Debian repo is like that...
The HTML page with the license texts (that CAD Assistant uses and I want to adjust for FreeCAD) doesn't require any CSS stuff or the like. Therefore, the lightweight QTextBrowser class which is not based on Webkit absolutely suffices. Indeed, with my self-compiled Qt 5.6 on Windows I don't have the Webkit module as the build process always failed. So, a solution that doesn't require Webkit would be the best.

Alternatively, one can also open the system browser and show the license text there but in Qt older than 5.6.2 on Windows there is a bug so that the browser doesn't jump to the anchor of a given url. As a workaround we could also make one HTML file per library.
wmayer
Site Admin
Posts: 14775
Joined: Thu Feb 19, 2009 10:32 am

Re: Release of v0.17

Postby wmayer » Sun Feb 11, 2018 10:45 am

git commit 7335b3ae adds a new tab to the About dialog with all 3rd party libs and their licences.
User avatar
kkremitzki
Posts: 1708
Joined: Thu Mar 03, 2016 9:52 pm
Location: Texas

Re: Release of v0.17

Postby kkremitzki » Sun Feb 11, 2018 4:24 pm

Now that we are in feature freeze can we get a git tag e.g. 0.17-alpha1 which can be used by debian's uscan? This will help me prepare the package for the experimental branch.
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.