maria-korosteleva / GarmentCode

A modular programming framework for designing parametric sewing patterns
MIT License
137 stars 13 forks source link

Remove or adjust PySimpleGUI dependency #2

Closed mjgordon closed 1 month ago

mjgordon commented 6 months ago

As of February, PySimpleGUI has moved to a paid/non-open model with their version 5, and removed/obfuscated access to earlier code. https://docs.pysimplegui.com/en/latest/readme/sunset/ https://github.com/PySimpleGUI/PySimpleGUI It is unclear how an academic work fits into the authors intended hobby/commercial divide, as well as how this may fit with GarmentCode's chosen license.

Additionally its current delivery method has some security/trust concerns. https://discuss.python.org/t/pysimplegui-now-requires-a-paid-license-opinions/48790/11

Could the dependency be changed to one of the forks of the last update of PySimpleGUI4, or to whichever underlying gui toolkit the PySimpleGUI wrapper was accessing?

maria-korosteleva commented 6 months ago

@mjgordon thank you for bringing this up! I'm aware of the problem and have raised the issue of academic licensing with the PySimpleGUI team

Internally, we are discussing a switch to web-based GUI to get rid of PySimpleGUI dependency entirely. Unfortunately, being an academic lab, we have limited resources to execute this quickly or provide intermediate solutions. I will try to look into the fork solution you suggested when my other commitments allow. We welcome code contributions, of course 🙂

In the meantime, the configurator can be used without GUI entirely -- through the command line. One could simply modify the values in the design and body measurements config .yaml files and run the test_garments.py with the modified settings.

maria-korosteleva commented 4 months ago

For now, we have integrated PySimpleGUI 5 distribution license, so that users of GarmentCode don't have to obtain the license to use our framework. We continue looking into moving to another solution in the future

maria-korosteleva commented 1 month ago

It took some time, but with the release of PyGarment 2.0.0, we rewrote the interface to the fully open-source niceGUI library Check it out =)