Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-10-10 | Merge branch 'master' into kitsune-fix-read-receipts-and-markers | Alexey Rusakov | |
2021-10-10 | Keep the reply when replacing an event | Tobias Fella | |
2021-10-06 | 0.6.11 | Alexey Rusakov | |
2021-10-06 | Quotest: return non-zero when things go really wrong | Alexey Rusakov | |
...such as stuck login or failure to join the room. Closes #496. | |||
2021-10-05 | Quotest: return non-zero when things go really wrong | Alexey Rusakov | |
...such as stuck login or failure to join the room. Closes #496. | |||
2021-10-05 | Connection: fix C++20 warnings | Alexey Rusakov | |
2021-10-05 | BaseJob: refresh error handling | Alexey Rusakov | |
- BaseJob::prepareError() slightly updated to get the current status instead of checking the returned value outside in gotReply() - BaseJob::gotReply() no more reports on 429 Too Many Requests twice (the first time with dubious "Too Many Requests: Unknown error") | |||
2021-10-05 | BaseJob::StatusCode: officially deprecate most *Error enumerators | Alexey Rusakov | |
2021-10-04 | Room: use more modern Connection API | Alexey Rusakov | |
2021-10-04 | Regenerate CS API files upon the previous commit | Alexey Rusakov | |
2021-10-04 | BaseJob: percent-encode variable path parts | Alexey Rusakov | |
This is meant to spare clients from having to percent-encode room aliases, v3 event ids etc. that happen to hit the endpoint path. It is unfair to expect clients to do that since they are not supposed to care about the shape of CS API, which parameter should be encoded in which way. The trick (together with the slightly updated GTAD configuration) is to percent-encode parts that happen to be QStrings and not `const char[]`'s while passing all constant parts as plain C character literals. This also allows to make it more certain that the path is correctly encoded by passing and storing QByteArray's wherever the path is already encoded, and only use QStrings (next to const char arrays) before that. Since the change alters the API contract (even if that contract was crappy), some crude detection of percent-encoded stuff on input is inserted; if input is already percent-encoded, a warning is put to the logs, alerting developers about the change. | |||
2021-10-04 | gtad.yaml: make _rightQuote example less trivial | Alexey Rusakov | |
2021-10-04 | Make connectSingleShot() a tiny wrapper on Qt 6 | Alexey Rusakov | |
Qt 6 has Qt::SingleShotConnection; connectSingleShot remains just for the sake of compatibility across Qt 5 and Qt 6. If you target Qt 6 only, feel free to use the Qt facility directly. | |||
2021-10-04 | Drop old compatibility code | Alexey Rusakov | |
libQuotient 0.7 really requires Qt 5.12, nothing earlier will work. | |||
2021-10-04 | Move away wrap_in_function to private interface | Alexey Rusakov | |
This has always been merely a workaround to enable connectUntil/connectSingleShot and was never intended to be used elsewhere, let alone in clients. | |||
2021-10-04 | Further tighten the linkifier in prettyPrint() | Alexey Rusakov | |
2021-10-04 | Add tests for prettyPrint() | Alexey Rusakov | |
2021-10-04 | quotient_common.h: remove a stray semicolon | Alexey Rusakov | |
2021-10-04 | Further tighten the linkifier in prettyPrint() | Alexey Rusakov | |
2021-10-04 | Add tests for prettyPrint() | Alexey Rusakov | |
2021-10-04 | prettyPrint(): tighten up Matrix identifier regex | Alexey Rusakov | |
It was too permissive on characters before the identifier and also allowed the domain name to start on dash, which should not occur. Closes #512. | |||
2021-10-04 | AccountRegistry: minor code cleanup | Alexey Rusakov | |
2021-10-03 | prettyPrint(): tighten up Matrix identifier regex | Alexey Rusakov | |
It was too permissive on characters before the identifier and also allowed the domain name to start on dash, which should not occur. Closes #512. | |||
2021-10-03 | 0.6.10 | Alexey Rusakov | |
2021-09-28 | SyncData: drop a shortcut that led to ignoring invites | Alexey Rusakov | |
Fixes #510. | |||
2021-09-28 | quotest: timelineEdge() -> historyEdge() | Alexey Rusakov | |
timelineEdge() is deprecated. | |||
2021-09-28 | SyncData: drop a shortcut that led to ignoring invites | Alexey Rusakov | |
Fixes #510. | |||
2021-09-19 | Use C++ instead of commenting | Alexey Rusakov | |
2021-09-18 | Merge pull request #505 from TobiasFella/encryptedfile | Alexey Rusakov | |
2021-09-18 | Add the encryptedfile to the eventcontent | Tobias Fella | |
2021-09-15 | Merge pull request #507 from TobiasFella/roomcreationtypes | Alexey Rusakov | |
Add room types to RoomCreateEvent | |||
2021-09-14 | Add room types to RoomCreateEvent | Tobias Fella | |
2021-09-12 | Merge pull request #506 from TobiasFella/activateencryption | Alexey Rusakov | |
Add convenience function for activating encryption | |||
2021-09-12 | 0.6.9 | Alexey Rusakov | |
2021-09-12 | Merge pull request #499 from TobiasFella/mxcnam | Alexey Rusakov | |
Implement the mxc protocol in the NetworkAccessManager | |||
2021-09-12 | Fix a memory leak in DownloadRunner | Alexey Rusakov | |
2021-09-12 | Fix building with older Qt | Alexey Rusakov | |
2021-09-12 | Connection: update AccountRegistry | Alexey Rusakov | |
Clients don't need to do it themselves. | |||
2021-09-12 | MxcReply: make sure to create a Private object | Alexey Rusakov | |
2021-09-12 | NAM::createRequest(): more logging | Alexey Rusakov | |
2021-09-12 | Add a download test to quotest | Alexey Rusakov | |
2021-09-11 | Add convenience function for activating encryption and fix | Tobias Fella | |
EncryptionEvent constructor | |||
2021-09-11 | BaseJob: deprecate endpoint accessors; query returns an object | Alexey Rusakov | |
To provide more room for internal changes in BaseJob. | |||
2021-09-11 | Further tweaks to MxcReply | Alexey Rusakov | |
- QNetworkReply::isSequential() already returns `true`, there's no need to overload it again. - Use `Q_SLOTS` instead of `slots` because it's an external library interface and clients may use other libraries using `slots` identifier; - Use `emit` instead of `Q_EMIT` because this is a part of internal implementation and if we ever use a library that has an `emit` identifier, a massive search-replace will be in order anyway. - Use `QMetaObject::invokeMethod()` with a queued connection as a clearer way to achieve the same goal as `QTimer::singleShot(0, ...)`. | |||
2021-09-11 | Don't parent NAM to QCoreApplication | Alexey Rusakov | |
QThreadStorage accepts ownership over stored objects. | |||
2021-09-10 | Move URL creation to Room/Connection; use query instead of fragment | Alexey Rusakov | |
The query is easier to manipulate; and the original mxc URL is not used for the real network request anyway. | |||
2021-09-10 | Add "quotient.network" logging category | Alexey Rusakov | |
2021-09-10 | Percent-encode all the things | Tobias Fella | |
2021-09-10 | Return a failed MxcReply on invalid requests | Tobias Fella | |
2021-09-10 | Update lib/networkaccessmanager.cpp | Tobias Fella | |
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net> |