8000 giving WPPM a non-Qt gui option · Issue #834 · winpython/winpython · GitHub
[go: up one dir, main page]

Skip to content

giving WPPM a non-Qt gui option #834

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
stonebig opened this issue Apr 9, 2020 · 16 comments
Open

giving WPPM a non-Qt gui option #834

stonebig opened this issue Apr 9, 2020 · 16 comments

Comments

@stonebig
Copy link
Contributor
stonebig commented Apr 9, 2020

It's time to explore a non-Qt gui option for wppm, that must be small enough to fit in the ".dot"
version
options:

  • tkinter,
  • flask, (learning the rest ropes, yet to get it work, you need to add a lot of small packages)
  • PySimpleGUI
  • remi
  • ... ?

functionnalities of wppm gui:

  • show list of packages and names of a given winpython directory (or let simply to current)
  • allow to select a wheel to install. (drag & drop)
  • allow to remove a wheel from install (checkmark)
  • standalone (no internet required)
  • small would be a bonus (so can feed into a dot version)
  • is a move forward rather than a tkinter development

contributors ideas are welcomed.

@stonebig
Copy link
Contributor Author
stonebig commented Apr 10, 2020

in the process of looking at it:

  • "npm config set ignore-scripts true"
  • Typescript takeover Javascript by default mid 2020,
  • WASM allow to execute native packages in the browser.

@stonebig
Copy link
Contributor Author

thinking to use sqlite with json1 extension, now available in Python-3.9

@hiccup7
Copy link
hiccup7 commented Jul 3, 2020

Another reason for non-Qt gui option is that wppm could then be used to change versions of PyQt or PySide2.

I don't like Remi because it requires compatibility with all web browsers where WinPython may be installed. A very difficult thing. Also, a properly-secured web browser should be isolated from anything that can install software.

Since WinPython is released with alpha and beta versions of Python, it would frustrating to find that a gui package doesn't work with these Python versions. For example, see https://github.com/PySimpleGUI/PySimpleGUI#python-37 It doesn't work with Python 3.7.3 or later.

I propose that wppm use Tkinter, which is included in the standard (built-in) library. If wppm uses any package for the gui, then that package cannot be changed with wppm. Tkinter has the highest probability of working correctly in alpha and beta versions of Python.

Translating the current wppm from Qt to Tkinter may be a good project for a student. Removing the requirement for drag-n-drop may help the project succeed for the first release.

@stonebig
Copy link
Contributor Author
stonebig commented Jul 4, 2020

It already works with pyside2.

Tkinter problem is zero appeal/zero future: nobody sane will invest time specifically targeting it.

@hiccup7
Copy link
hiccup7 commented Jul 5, 2020

What works for PySide2, which doesn't work for PyQt?

@przemororo
Copy link

Perhaps option with update package via pip and checking packages updates will be good feature

@stonebig
Copy link
Contributor Author

You can use pip already, the GUI was just a basic layer over pip .

I'm not so sure the current GUI makes much sense nowadays, and with pip new resolver it may even be harmfull.

My hope/push is to make pip json friendly and api friendly, so it can be easily completed with an html front-end by a motivated millennial.

@stonebig
Copy link
Contributor Author

as PyPy has no Qt package, this is an increasing concern:

  • evolving WPPM
  • or droping it.

@stonebig
Copy link
Contributor Author
stonebig commented Jul 2, 2022

PyPY as a Qt package, but it needs 1 year to mature

@firai
Copy link
Contributor
firai commented Jul 3, 2022

The control panel already works on PyPy as far as I can tell. I didn't test all of the functions, but the GUI itself seems to be fine.

image
image

@stonebig
Copy link
Contributor Author
stonebig commented Jul 3, 2022

Yesterday trying to click to de-install, the checkmark was not displayed, so my remark

@firai
Copy link
Contributor
firai commented Jul 3, 2022

Seems to be a bug/incompatibility with Pyside6 6.3.1. The checkboxes don't respond correctly on CPython (at least 3.10) either.

Edit: And the checkboxes seem to work correctly with Pyside6 6.3.0 on PyPy.

@stonebig
Copy link
Contributor Author
stonebig commented Jul 3, 2022

Would you mind posting your discovery on gitter of pyside ?

@firai
Copy link
Contributor
firai commented Jul 4, 2022

I think I found a fix for PySide6 6.3 (#1083), but I haven't tested the fix against PyQt5 (or the other variants) yet. Unfortunately, I might not have time to so for several days. If you're able to test the patch against PyQt5, that would be great.

@stonebig
Copy link
Contributor Author

wppm has the basic options, in line command... still a webapi or more refinements shall be interesting over that

@stonebig
Copy link
Contributor Author
stonebig commented May 4, 2025

at the moment, still no clear solution of what a "simple" gui shall be, that won't hurt maintainance.

  • some people talk about flet
  • maybe an AI can generate a tcl/tk (non web)
  • gui are interesting when there is a big "ergonomic" benefit;
    • there must be first real ergonomic "winner" ideas (navigating the packages ? maybe in rich ?)
    • there must be an AI to code it / maintain it
    • and it must fit into a small "dot" version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants
0