- Jan 08, 2020
-
-
We decided to keep only PER and handle different kinds with specific attributes later on.
-
-
-
Currently in python 2 if we try to print a BrowserQuestion that has a unicode message, it crash with the error UnicodeEncodeError or UnicodeDecodeError. This can be fixed by using the __unicode__ from StrConv.
-
We set the default value of selenium logger to ERROR to avoid spamming logs with useless information. Also, the data we send to the browser using selenium (with send_keys) can be displayed clearly in the log, if the log level is set to DEBUG.
-
Added fill_env method to AbstractElement so that it can be overriden in pages methods. It is useful to chose how Env behaves
-
-
Adding the 'boobill.storage' file handling the browser state, like already done for 'boobank'. This was necessary to make the EDF module work, as it needs a way to store an authentication token between browser sessions.
-
- Dec 18, 2019
-
-
hydrargyrum authored
-
-
-
Previously custom headers from Form.submit()'s kwargs weren't added to the request's headers. That's because the Form.request property already built a requests.Request object and Browser.build_request() down the line would not add any headers (except the referer) to an already built requests.Request object. So now the headers (if any are provided to Form.submit() as keyword arguments) are added in Form.request() to avoid modifying low level behaviour such as Browser.build_request().
-
MRO algorithm couldn't create a consistent method resolution with capabilities from current and parent module using AbstractModule. > TypeError: Cannot create a consistent method resolution Fix this by checking that cap is not already defined in capabilities from parent.
-
- Dec 15, 2019
-
-
hydrargyrum authored
No need to create another image class since it exists. Plus we can have thumbnails and more stuff.
-
hydrargyrum authored
Add compatibility aliases so modules continue to work with old field names. Use in calendar, contact, gauge, geolocip and housing.
-
hydrargyrum authored
-
hydrargyrum authored
-
hydrargyrum authored
-
hydrargyrum authored
In setuptools, it's not possible to have an optional dependency triggering what files are installed and how to build certain files, we have to make 2 setup.py. Unfortunately, having 2 setup.py files does possible in one repository. So, we have to split the repository in 2. After this point, the repository will fork. One repository will take only qt stuff, and the other repository will contain browser framework, cli apps and modules. Qt apps are under the weboob.applications package though. To have 2 pip packages shipping files in the same root package (weboob.*), the package must be namespaced. This can be achieved by tweaking all ancestor __init__.py files.
-
hydrargyrum authored
This will allow setup.py to avoid the scripts dir and use entry-points
-
- Dec 05, 2019
-
-
Until now, we only had one way to handle the Profile name, with the field "name". With "firstname" and "lastname", we have a deeper granularity. We still need the field name, because all names cannot be split with only firstname + lastname (like middlename).
-
It fixes an issue when the parent defines ADDITIONAL_CONFIG but not our class, as there was nothing to merge. Also it allows this field and its doc to appear in help()
-
AppValidationError is the base error for when something happens during an AppValidation. AppValidationCancelled and AppValidationExpired both inherits from AppValidationError.
-
in several places, string representations of capabilities are used. This string representations is made using the capability __name__ field. This creation must be centralized in weboob.capabilities.base files
-
It is useful if AbstractPage is used too.
-
When I needed to use a `ValueBool` when using a `TransferStep`, I realized that answering 'yes' to the question reacted as planned but answering 'no' made no change. No `False` was returned because the `Value` was not kept as a parameter of the interrupted method. I don't know why it was made this way (the commit message does not tell much). But now, the `Value` is kept no matter its value.
-
- Nov 30, 2019
-
-
Shorter messages and to the point, also show when saved.
-
This allows filtering and it is also nicer to have a prefix.
-
-
Sometimes it is lowercase, uppercase, or even bytes instead of unicode strings! This removes a warning under Python 3.
-
- Nov 20, 2019
-
-
-
-
The dates where evaluated at startup, this meant NEXT_DAY and NEXT_24H were fixed since the browser creation not when raising the exception
-
This will prevent from silently returning a bad datetime.
-
[browser/exceptions] BrowserTooManyRequests: Check whether the next_try is None after the date check If we check if next_try is None first, then we will set the next_try to a default datetime that will be overriden by the next check on date.
-
This will prevent giving a message to BrowserTooManyRequests instead of a next_try by mistake.
-
The URL `https://people.symlink.me/~rom1` has been changed to `https://romain.bignon.me/`.
-
Usually the next_try will be the next day or the next 24h, so to avoid modules to compute it everytime we do it here.
-
- Nov 14, 2019
-
-
Romain Bignon authored
-
- Nov 09, 2019
-
-