Extension Manager (ExtMan)

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!
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Extension Manager

Post by Kunda1 »

mnesarco wrote: Sat Oct 10, 2020 5:17 pm
I'm not certain of this, but does Extension Manger list the version numbers of each addon?
An offtopic aside: In you opinion, how can we get those versions to be added and listed in the Std_About dialog?
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
User avatar
mnesarco
Posts: 475
Joined: Thu Mar 26, 2020 8:52 pm

Re: Extension Manager

Post by mnesarco »

Kunda1 wrote: Thu Oct 15, 2020 6:46 pm
I don't know to much about Std_About, What I know is that extensions (Workenches, Macros, Themes, And Mods without workbenches) has no standard metadata from where we can extract version number in a reliable and efficient manner. Someone suggested to use the git hash, but it looks pretty ugly and uninformative for final users. What I think (And it is just my opinion) is that FreeCAD requires to enforce a standard metadata on extensions.

The way that the current AddOnManager (And ExtensionManager in order to be compatible). extract some metadata from extensions is using regular expressions against some files including python sources. It is a kind of brute force method. I hate it but I implemented it in the Extension Manager in order to make it to work the same as the AddonManager in the begining and with the intention to modify it later. That is why it is abstracted as protocols in the ExtensionManager. Currently extension are imported also from wiki pages which is horrible. In the ExtensionManager I also install some extensions from Git but obtain the metadata from the mediawiki :cry: All of this crazyness is because we have no standard, enforced, mandatory metadata on extensions.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Extension Manager

Post by Kunda1 »

mnesarco wrote: Fri Oct 16, 2020 12:20 am All of this crazyness is because we have no standard, enforced, mandatory metadata on extensions.
OK, lets start.
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
User avatar
mnesarco
Posts: 475
Joined: Thu Mar 26, 2020 8:52 pm

Re: Extension Manager

Post by mnesarco »

Kunda1 wrote: Fri Oct 16, 2020 12:44 am OK, lets start.
In the ExtMan itself, I drafted some initial idea of a metadata file:

https://github.com/mnesarco/FreeCAD_Ext ... nifest.ini

It needs to be generalized to support:

- Macros
- Workbenches
- Mods without workbenches
- CSS Themes?

There are other options like existing metadata schemes and package managers: setuptools (pip), conda, conan...
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Extension Manager

Post by Kunda1 »

mnesarco wrote: Fri Oct 16, 2020 12:52 am
Kunda1 wrote: Fri Oct 16, 2020 12:44 am OK, lets start.
In the ExtMan itself, I drafted some initial idea of a metadata file:

https://github.com/mnesarco/FreeCAD_Ext ... nifest.ini

It needs to be generalized to support:

- Macros
- Workbenches
- Mods without workbenches
- CSS Themes?

There are other options like existing metadata schemes and package managers: setuptools (pip), conda, conan...
I think CSS Themes should definitely be included.
I guess we need to create or use an pre-existing issue in the FreeCAD-Addons repo to track migration to this new metadata file format.
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
User avatar
HakanSeven12
Veteran
Posts: 1481
Joined: Wed Feb 06, 2019 10:30 pm

Re: Extension Manager

Post by HakanSeven12 »

Nice work
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Extension Manager

Post by bernd »

Does the Extension Manager uses the same git repo as the AddOn manager?
User avatar
mnesarco
Posts: 475
Joined: Thu Mar 26, 2020 8:52 pm

Re: Extension Manager

Post by mnesarco »

bernd wrote: Mon Nov 30, 2020 10:56 am Does the Extension Manager uses the same git repo as the AddOn manager?
Yes it does. But it does not relay on html parsing.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Extension Manager

Post by bernd »

Thanks.

Is there a special reason why the ExtensionManager is not installabble by the AddOn manager even if he would bury the AddOn manager or better to inherit the AddOn manager ...
User avatar
mnesarco
Posts: 475
Joined: Thu Mar 26, 2020 8:52 pm

Re: Extension Manager

Post by mnesarco »

bernd wrote: Fri Dec 04, 2020 3:43 pm Thanks.

Is there a special reason why the ExtensionManager is not installabble by the AddOn manager even if he would bury the AddOn manager or better to inherit the AddOn manager ...
ExtensionManager IS installable from AddOn Manager, just add the github repo to the custom repositories in AddOn Manager.
Post Reply