Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lazy loading members #263

Merged
merged 29 commits into from
Dec 14, 2018
Merged

Lazy loading members #263

merged 29 commits into from
Dec 14, 2018

Commits on Dec 8, 2018

  1. Refactor toJson/fillJson

    Both now use through a common JsonConverter<> template class with its
    base definition tuned for structs/QJsonObjects and specialisations for
    non-object types. This new implementation doesn't work with virtual
    fillJson functions yet (so EventContent classes still use toJson as a
    member function) and does not cope quite well with non-constructible
    objects (you have to specialise JsonConverter<> rather than, more
    intuitively, JsonObjectConverter<>), but overall is more streamlined
    compared to the previous implementation. It also fixes one important
    issue that pushed for a rewrite: the previous implementation was not
    working with structure hierarchies at all so (in particular) the Filter
    part of CS API was totally disfunctional.
    KitsuneRal committed Dec 8, 2018
    Configuration menu
    Copy the full SHA
    3392e66 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9628594 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a005348 View commit details
    Browse the repository at this point in the history
  4. Connection: support members lazy-loading

    This should cover the Connection-related part of #253.
    
    Connection gained lazyLoading/setLazyLoading accessors and the respective Q_PROPERTY.
    When lazy loading is on, sync() adds lazy_load_members: true to its filter.
    KitsuneRal committed Dec 8, 2018
    Configuration menu
    Copy the full SHA
    1ff8a0c View commit details
    Browse the repository at this point in the history
  5. Room summaries

    KitsuneRal committed Dec 8, 2018
    Configuration menu
    Copy the full SHA
    9272d21 View commit details
    Browse the repository at this point in the history
  6. Omittable<>::merge<>

    KitsuneRal committed Dec 8, 2018
    Configuration menu
    Copy the full SHA
    4a252aa View commit details
    Browse the repository at this point in the history

Commits on Dec 9, 2018

  1. MSC 688: MSC-compliant RoomSummary; update Room::calculateDisplayname()

    The members of the summary can be omitted in the payload; this change fixes calculation
    of the roomname from hero names passed in room summary. Also: RoomSummary can be dumped to QDebug now.
    KitsuneRal committed Dec 9, 2018
    Configuration menu
    Copy the full SHA
    d51684b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1678296 View commit details
    Browse the repository at this point in the history
  3. Room: track more changes; fix cache smashing upon restart

    Commit fd52459 introduced a regression rendering the cache unusable
    after a client restart (an empty state overwrites whatever state was in
    the cache). This commit contains the fix, along with more room change
    tracking.
    KitsuneRal committed Dec 9, 2018
    Configuration menu
    Copy the full SHA
    9225eae View commit details
    Browse the repository at this point in the history
  4. Room: defer memberListChanged(); track room summary changes

    This concludes beta-version of lazy-loading support in libQMatrixClient (#253).
    KitsuneRal committed Dec 9, 2018
    Configuration menu
    Copy the full SHA
    9b3e437 View commit details
    Browse the repository at this point in the history

Commits on Dec 10, 2018

  1. Room::getPreviousContent: use early return

    ...instead of the entire function body wrapped in an if block.
    KitsuneRal committed Dec 10, 2018
    Configuration menu
    Copy the full SHA
    501c79f View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2018

  1. Configuration menu
    Copy the full SHA
    c6720cc View commit details
    Browse the repository at this point in the history
  2. RoomMemberEvent: properly integrate with GetMembersByRoomJob

    GetMembersByRoomJob was dysfunctional so far, creating "unknown
    RoomMemberEvents" instead of proper ones. Now that we need it for lazy-
    loading, it's fixed!
    KitsuneRal committed Dec 11, 2018
    Configuration menu
    Copy the full SHA
    0e67d1e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f0bd24a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2db8593 View commit details
    Browse the repository at this point in the history

Commits on Dec 12, 2018

  1. Configuration menu
    Copy the full SHA
    095444a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c46663a View commit details
    Browse the repository at this point in the history
  3. Room: more doc-comments

    KitsuneRal committed Dec 12, 2018
    Configuration menu
    Copy the full SHA
    3934855 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c33680b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    cda9a0f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    91b20ca View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    5b06b16 View commit details
    Browse the repository at this point in the history
  8. Regenerate csapi/

    KitsuneRal committed Dec 12, 2018
    Configuration menu
    Copy the full SHA
    8dcda23 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    b4aa613 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    07c9eac View commit details
    Browse the repository at this point in the history

Commits on Dec 13, 2018

  1. Configuration menu
    Copy the full SHA
    cb5f0f6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cf4759e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2cbb053 View commit details
    Browse the repository at this point in the history

Commits on Dec 14, 2018

  1. qmc-example: clearer QMC_CHECK; start tests only after the first sync…

    … is done
    
    Because lazy-loading test is executed on a room different from the test room.
    KitsuneRal committed Dec 14, 2018
    Configuration menu
    Copy the full SHA
    12a0b95 View commit details
    Browse the repository at this point in the history