| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
|
|
| |
The cache_ok flag was added [1] in SQLAlchemy 1.4.14 and emits a warning
if not set to either True or False. Since DateTimeUTC should be fine to
cache, indicate True here.
[1] https://docs.sqlalchemy.org/en/14/core/custom_types.html#sqlalchemy.types.TypeDecorator.cache_ok
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quassel stores its timestamps as INTEGERs when using the SQLite backend. Since
SQLAlchemy expects strings here instead[1], we have to handle this manually.
This commit extends the existing process_result_value() function to handle a
conversion from a unix timestamp to a proper datetime object, makes sure that
the right impl is chosen for both SQLite and PostgreSQL, and adds the
process_bind_param() function which takes care of the conversion back to a unix
timestamp when binding values for SELECT statements.
[1] https://docs.sqlalchemy.org/en/14/core/type_basics.html#sqlalchemy.types.DateTime
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit efde2954efd636a617702ee1aefb8b1247c9cc5b.
After some more consideration, we feel that referring to modes here is
misleading and confusing. Compromise by keeping the -m flag, but
changing the variable name back to 'prefix' and making clear in the help
message that quarg will match against the "channel membership prefix", a
term that is used in the Modern IRC Client Protocol specification [1]
[1] https://modern.ircdocs.horse/#channel-membership-prefixes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quassel uses UTC message timestamps in its database, but does not save
any timezone information along with them. Up until now, we were reading
those timestamps from the database naively - resulting in datetime
objects that could not be identified as UTC.
The same happened with timestamps we got from dateutil.isoparse. If the
user did not specify an offset explicitly, the timestamp would be parsed
and passed to the program "as is", effectively being interpreted as UTC
because they were compared to database timestamps.
This commit will ensure that the correct timezone is saved for every
datetime object we encounter. Timestamps from the database are marked as
UTC. If the user does not explicitly specify an offset, the timestamp is
assumed to be in local time.
Furthermore, when printing out message timestamps, make sure to convert
them to the user's local timezone first.
|
| |
|
|
|
|
|
|
|
|
|
| |
Whilst still not perfect, 'umode' signals more closely what this option
does. We do not plan to add matching on channel modes, so -m should be
fine here.
The original name for this option came from the column in the backlog
table, 'senderprefixes'.
|
|
|
|
|
| |
These make more sense and are clearer if they're named after the command
line arguments that trigger them.
|
|
|