Skip to content

Aplicação falha ao iniciar no modo pywebview devido ao argumento icon #26

Description

@pitangainnovare

Aplicação falha ao iniciar no modo pywebview devido ao argumento icon

Descrição do problema

Após a instalação bem-sucedida do projeto, a aplicação falha ao iniciar quando executada no modo desktop baseado em pywebview.

O erro ocorre porque a função webview.create_window() recebe o argumento icon, que não é aceito pela versão instalada da biblioteca pywebview.

A execução pelo navegador funciona normalmente. Portanto, o problema não impede o uso da aplicação em modo browser e está restrito à inicialização da interface desktop com pywebview.

Passos para reproduzir o problema

  1. Acesse o diretório que contém o arquivo pyproject.toml:

    cd spsvalidator/spsvalidator
  2. Instale o projeto:

    python -m pip install -e ".[dev]"
  3. Execute a aplicação no modo desktop com pywebview:

    spsvalidator
  4. Observe o erro:

    (.venv) (base) user@host:~/spsvalidator/spsvalidator$ spsvalidator
    Traceback (most recent call last):
      File "/home/user/spsvalidator/.venv/bin/spsvalidator", line 6, in <module>
        sys.exit(main())
                 ~~~~^^
      File "/home/user/spsvalidator/spsvalidator/src/spsvalidator/main.py", line 56, in main
        webview.create_window(**window_kwargs)
        ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    TypeError: create_window() got an unexpected keyword argument 'icon'
    
  5. Execute a aplicação no modo browser.

  6. Observe que a aplicação funciona normalmente quando acessada pelo navegador.

Comportamento esperado

A aplicação deve iniciar normalmente tanto no modo browser quanto no modo desktop baseado em pywebview.

Ao executar:

spsvalidator

a interface desktop deve ser aberta sem apresentar exceções.

A chamada de webview.create_window() deve utilizar somente argumentos compatíveis com a versão de pywebview declarada pelo projeto.

Alternativamente, o projeto deve fixar uma versão de pywebview que ofereça suporte ao argumento icon.

Screenshots ou vídeos

Não se aplica. O traceback completo está apresentado nos passos para reprodução.

Anexos

Não se aplica.

Ambiente utilizado

  • Sistema operacional: Linux

  • Shell: Bash

  • Ambiente virtual Python: .venv

  • Modo com falha: interface desktop via pywebview

  • Modo funcional: execução via navegador

  • Diretório de execução:

    /home/user/spsvalidator/spsvalidator
    
  • Arquivo relacionado ao erro:

    src/spsvalidator/main.py
    
  • Linha indicada no traceback: 56

  • Exceção apresentada:

    TypeError: create_window() got an unexpected keyword argument 'icon'
    

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions