[bank][banquepopulaire] wrong parameters when instanciating AppValidation
With which module do you encounter problems?
banquepopulaire
Describe the problem you encounter
python error when trying to get list of transactions
Paste here the stacktrace or error message you observe
$ woob bank list --debug -b banquepopulaire
[...]
2022-09-29 01:56:14,367:WARNING:backend.banquepopulaire.browser:3.0:browser.py:808:do_new_login Security level 291 is linked to an SCA with CLOUDCARD auth method
2022-09-29 01:56:14,369:DEBUG:bcall:3.0:bcall.py:98:backend_process <Backend 'banquepopulaire'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f293c551f10>> raised an error: TypeError("__init__() got an unexpected keyword argument 'expires_at'")
Bug(banquepopulaire): __init__() got an unexpected keyword argument 'expires_at'
(If --auto-update is passed on the command-line, new versions of the module will be checked automatically)
Traceback (most recent call last):
File "/home/vdanjean/.local/lib/python3.9/site-packages/woob/core/bcall.py", line 94, in backend_process
result = function(backend, *args, **kwargs)
File "/home/vdanjean/.local/lib/python3.9/site-packages/woob/tools/application/base.py", line 349, in _do_complete
res = getattr(backend, function)(*args, **kwargs)
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/module.py", line 171, in iter_resources
return self.iter_accounts()
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/module.py", line 121, in iter_accounts
return self.browser.iter_accounts()
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/browser.py", line 100, in wrapper
ret = cb()
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/browser.py", line 96, in cb
return func(browser, *args, **kwargs)
File "/home/vdanjean/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 981, in inner
browser.do_login()
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/compat/woob_browser_mfa.py", line 227, in do_double_authentication
self.init_login()
File "/home/vdanjean/.local/share/woob/modules/3.0/banquepopulaire/browser.py", line 489, in init_login
raise AppValidation(
TypeError: __init__() got an unexpected keyword argument 'expires_at'
---------------------------------------------------------+----------+----------
2022-09-29 01:56:14,407:DEBUG:backend.banquepopulaire.browser:3.0:woob_browser_mfa.py:105:dump_state Stored cookies into storage
2022-09-29 01:56:14,410:DEBUG:woob.config:3.0:yamlconfig.py:96:save Configuration file saved: /home/vdanjean/.config/woob/bank.storage.
What are the steps to reproduce the problem?
Run the woob bank list
command when a login with double auth is required
What woob version are you using?
Output of woob config --version
command:
Woob config v3.0 Copyright(C) 2010-2022 Christophe Benz, Romain Bignon
What module version are you using?
Output of woob config info MODULE_NAME
command:
.------------------------------------------------------------------------------.
| Module banquepopulaire |
+-----------------.------------------------------------------------------------'
| Version | 202208221535
| Maintainer | Romain Bignon <romain@weboob.org>
| License | LGPLv3+
| Description | Banque Populaire
| Capabilities | CapProfile, CapBankWealth, CapBank, CapDocument, CapCollection, CapCredentialsCheck, CapContact
| Installed | yes
| Location | http://updates.weboob.org/3.0/main/banquepopulaire.tar.gz
| |
| Configuration | website: Région
| | login: Identifiant (default: )
| | password: Mot de passe (default: )
| | code_sms: None
| | code_emv: None
| | resume: None
| | request_information: None
'-----------------'
How did you install woob?
setup.py
Additional info you'd like to mention
I workaround the bug by commenting out two lines at ~/.local/share/woob/modules/3.0/banquepopulaire/browser.py
near line 489:
raise AppValidation(
message=f"Prenez votre téléphone «{device_name}»."
+ " Ouvrez votre application mobile."
+ " Saisissez votre code Sécur'Pass sur le téléphone,"
+ " ou utilisez votre identification biométrique.",
#expires_at=expires_at,
#medium_label=device_name,
)
expires_at
and medium_label
does not seem to be handled/accepted for the constructor of AppValidation
in woob
3.0