Skip to content
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

Extensión del prototipo de GUI y primera invocacion al querier.py #27

Merged
merged 10 commits into from
Aug 12, 2023

Conversation

bassimat
Copy link
Collaborator

Se genera un nuevo frame con el textbox donde direccionar los resultados y logs del programa. El mismo está encapsulado en la clase LogsFrame.
Cuando está activo implementa otra nueva clase (StdoutRedirector) que gestiona la redirección de la salida estandar de la GUI y la API. Actualmente también imprime el stderr, aunque es un punto a conversar y mejorar (Nota: desligar stderr del stdout).

La visualización y activación de este frame se realiza mediante un checkbox asociado (y generado por la misma clase) que momentaneamente se agrega en el sidebar existente. Luego, si rompe el esquema pensado, podemos ver cual sería el mejor lugar para realizar esta activación.
Cuando no está activado, la impresión se sigue haciendo al stdout/err original --> terminal.

En última instancia se agrega un método global para la ejecución de comandos/scripts como demo para comprobar la funcionalidad. Cuando se realice una búsqueda vacía (todos los entrys vacios) se ejecutará la siguiente línea:
python querier.py -h
Su resultado se imprimirá en el TextBox o en Terminal dependiendo de la activación o no, del CheckBox "Show results and logs".

gui/gui.py Outdated Show resolved Hide resolved
@JCMiguel
Copy link
Owner

JCMiguel commented Jul 31, 2023

¡La idea me parece muy buena! Me gusta cómo vamos logrando encapsular widgets o fragmentos de la interfaz en clases independientes. Lo que sí, estoy teniendo problemas para probar su funcionamiento.

  • Venía probando la gui desde el directorio gui/. Esto hace que el directorio local ya no sea el base del repositorio, sino uno distinto. Luego, al tirar la búsqueda, se me imprime este log de error:
�[91mpython: can't open file 'D:\...\repository-reviewer\gui\querier.py': [Errno 2] No such file or directory
�[0m

No me parece un error grave, de última se soluciona invocando la gui desde el raíz del repositorio. No sé me ocurre una forma de arreglarlo por código, además.

  • Al ejecutar la gui desde la ruta de base, me salta un error de que no se encuentra la lib de yaml.
�[91mTraceback (most recent call last):
  File "D:\...\repository-reviewer\querier.py", line 5, in <module>
    import yaml
ModuleNotFoundError: No module named 'yaml'
�[0m

No se me ocurre a qué puede deberse este error. ¿Se te ocurre alguna idea?

@JCMiguel JCMiguel changed the base branch from gui_prototype to main August 1, 2023 23:36
@JCMiguel
Copy link
Owner

JCMiguel commented Aug 8, 2023

@bassimat creé los issues #29 y #30 para no olvidarme de las cosas que no pude resolver en este Pull Request.

El issue #29 es un problema de desempeño en la interfaz. Por su parte, el issue #30 es un problema que tuve al hacer la maquetación de las pestañas de Búsqueda básica y avanzada en la página del Querier.

Copy link
Owner

@JCMiguel JCMiguel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

¡Me dijo @bassimat que sale directo a prod (INOCUOOOO)! 😄

@JCMiguel JCMiguel merged commit fd2338f into main Aug 12, 2023
@JCMiguel JCMiguel deleted the gui_prototype_logs branch August 12, 2023 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants