Age | Commit message (Collapse) | Author |
|
|
|
Closes #354.
|
|
|
|
|
|
is_callable won't ever be needed because std::is_invokable is here; arg_number and returns() didn't find its users; and function_type has been just broken all along for member functions.
|
|
Checking that BaseEventT descends from Event is really extraneous.
|
|
Also: doc-comment connectUntil and unify implementation of both functions.
|
|
macros
Because otherwise migrating one group to the current location leads to all other groups suddenly disappearing from Settings view.
|
|
Alas, clang-format is not terrifically good around [[attributes]]
|
|
|
|
Invading into std:: is frowned upon, even though legitimate from the C++ standard perspective. Given that it's possible to pass a hash object to unordered_map, it only takes an alias for std::unordered_map to avoid having to specialize std::hash. And besides, a generic compatibility bridge between qHash and std::hash has been long needed.
std::hash<QString> in converters.h remains for now; it will be dropped separately when the API files get regenerated to use UnorderedMap.
|
|
Better BaseJob
|
|
Compilers warn on using 'using ...::operator""s' because they
think we're redefining the reserved suffix.
|
|
Anything after enumerators is a problem for moc before Qt 5.12; so
we can't use enumerator attributes before then.
|
|
MSVC warns on class/struct mismatch and errors on std::array because
`<array>` is not indirectly included on that platform.
|
|
The Spec now allows it, even if with a disclaimer that
it's subject for further removal.
|
|
Hopefully manages cases like #347 in a better way.
|
|
|
|
As before, completely transparent for clients, driven by 529 errors from
the server (but cases of rate limiting are signalled by
BaseJob::rateLimited). That brings changes to BaseJob API: timeouts now
use int64_t and also can be handled in std::chrono terms; aboutToStart()
-> aboutToSendRequest(); started() -> sentRequest(). Closes #292.
|
|
Notably, recovered Status::fromHttpCode() that was introduced in
5722ceaf4bd10c29f1091e3dc5a87f5650ea8c71 but fell victim of a careless
merge (so much for introducing non-topical changes in feature branches).
|
|
Finally, clients can pre-create job objects and then separately submit
them for execution on a given connection - previously such separation
was a privilege of Connection (others had to use Connection::callApi<>,
which invoked jobs right away).
|
|
To collect all connection-identifying information in a single place.
|
|
That's a matter of another upcoming commit.
|
|
|
|
|
|
|
|
Update the cache for sure if unread counters were changed
|
|
|
|
|
|
In Quaternion, I was able to reproduce a process where
`d->notificationCount` and `d->highlightCount` were changed in
`Room::updateData()` meanwhile `roomChanges` indicated `NoChange`
thus the cache became permanently inconsistent with running state.
Without deep understanding of `roomChanges` logic, I've applied
this straightforward change which made this phenomenon
unreproducible.
|
|
Closes #344.
|
|
Closes #326.
|
|
This changes from internal linkage for every translation unit including
e2ee.h to external linkage across translation units but without the need
to create a .cpp file just to define and init the constants.
|
|
|
|
|
|
|
|
They've been deprecated for almost a year by now.
|
|
The fallback to libQMatrixClient still remains.
|
|
|
|
[skip ci]
|
|
std::string is still a thing, after all.
|
|
|
|
|
|
|
|
This is an addition in https://github.com/matrix-org/synapse/pull/5805 -
Synapse no more tolerates fake state events (which actually obviates
the need for this test but fake state events still go through on older
Synapses). To allow checking for both cases Room behaviour has been
slightly changed (without compat breakage) to make sure the pending
event status is set to ReachedServer (and pendingEventChanged() is
emitted, if necessary) before merging the pending event into the
timeline.
|
|
|
|
Revealed after reordering #includes with clang-format.
|
|
|
|
Unified *Key -> *KeyL identifiers in roommessageevent.cpp along the way.
|
|
E2EE: introduce EncryptedEvent
|