FreeSimpleGUI

The free-forever GUI library

LGPL-3.0 License

Downloads
12.5K
Stars
321
FreeSimpleGUI - v5.1.1 Latest Release

Published by spyoungtech 3 months ago

What's Changed

In this release, we introduced a significant refactor (specifically, introduced in https://github.com/spyoungtech/FreeSimpleGUI/pull/9) of the large FreeSimpleGUI module. This is just a first step we're taking towards making FreeSimpleGUI more maintainable and approachable for contributors. There's still a lot of work to do, but this change cuts the main module size in half, making it quite a bit easier for LSPs and Intellisense to keep up with changes. Elements are now tucked neatly away into their own modules within the new elements subpackage.

All names are imported back into the main package, so this change should be non-breaking.

We also moved the main module back to __init__.py instead of the internal FreeSimpleGUI.py module. This avoids a bug introduced by the initial refactor by which changes to global state (which is unfortunately used extensively) may not take effect properly in some cases.

Other minor changes and deprecations:

  • The globals pil_imported and pil_import_attempted are no longer used internally. Attempting to access these globals will produce a deprecation warning.
  • The behavior of the methods save_element_screenshot_to_disk and save_window_screenshot_to_disk returning None when PIL cannot be imported is deprecated. In a future version, calling save_element_screenshot_to_disk or save_window_screenshot_to_disk when PIL cannot be imported will raise an ImportError.
  • This also fixes a bug where calling save_element_screenshot_to_disk or save_window_screenshot_to_disk would incidentally overwrite the Image element class due to use of the global keyword in these methods and importing the name Image from PIL whilst marking Image as global
  • The methods timer_start, timer_stop, and timer_stop_usec are deprecated and will be removed in a future version. (code timing is not FreeSimpleGUI's wheelhouse, and these implementations are flawed in any case). Not to be confused with the Window class methods of the same name, which are unchanged.
  • Using functions with CamelCase names that have snake_case function name replacements is deprecated and those camel-cased function aliases may be removed in a future version. Using these names will produce a deprecation warning.
  • don't use deprecated names internally by @spyoungtech in https://github.com/spyoungtech/FreeSimpleGUI/pull/10

Enhancements from new contributors:

New Contributors

Full Changelog: https://github.com/spyoungtech/FreeSimpleGUI/compare/v5.1.0...v5.1.1

FreeSimpleGUI - v5.1.0

Published by spyoungtech 5 months ago

What's Changed

  • As of this release, Python versions 3.8 through 3.12 are officially supported (though earlier versions may technically still be compatible). EOL versions of Python (3.7 and earlier) will not be supported for Python version related issues. No efforts will be made in future releases to ensure compatibility with EOL Python versions. (previously, 3.6 was the lowest compatible version).
  • The fsgupgrade command (aka psgupgrade) was removed in #6 -- the only supported method for upgrading FreeSimpleGUI is via a package manager, like pip.

Full Changelog: https://github.com/spyoungtech/FreeSimpleGUI/compare/v5.0.0...v5.1.0

FreeSimpleGUI - FreeSimpleGUIQt v1.0.0

Published by spyoungtech 7 months ago

Initial release for Qt port

FreeSimpleGUI - FreeSimpleGUIWx v1.0.0

Published by spyoungtech 7 months ago

Initial release for Wx port

FreeSimpleGUI - FreeSimpleGUIWeb v1.0.0

Published by spyoungtech 7 months ago

Initial release for the web port

FreeSimpleGUI - v5.0.0

Published by spyoungtech 7 months ago

Initial release.

FreeSimpleGUI - FreeSimpleGUIWeb v1.0.0rc1

Published by spyoungtech 7 months ago

Initial release candidate for the web port

FreeSimpleGUI - FreeSimpleGUIWx v1.0.0rc1

Published by spyoungtech 7 months ago

Initial release candidate for Wx port

FreeSimpleGUI - FreeSimpleGUIQt v1.0.0rc1

Published by spyoungtech 7 months ago

Initial release of the Qt port

FreeSimpleGUI - v5.0.0rc1

Published by spyoungtech 7 months ago

First release candidate build

Package Rankings
Top 36.47% on Pypi.org
Related Projects