Skip to content
Snippets Groups Projects
  1. Jul 19, 2019
  2. Jul 18, 2019
  3. Jul 17, 2019
    • Richard van der Hoff's avatar
    • Richard van der Hoff's avatar
      Improve `Depends` specs in debian package. (#5675) · 1def2981
      Richard van der Hoff authored
      This is basically a contrived way of adding a `Recommends` on `libpq5`, to fix #5653.
      
      The way this is supposed to happen in debhelper is to run
      `dh_shlibdeps`, which in turn runs `dpkg-shlibdeps`, which spits things out
      into `debian/<package>.substvars` whence they can later be included by
      `control`.
      
      Previously, we had disabled `dh_shlibdeps`, mostly because `dpkg-shlibdeps`
      gets confused about PIL's interdependent objects, but that's not really the
      right thing to do and there is another way to work around that.
      
      Since we don't always use postgres, we don't necessarily want a hard Depends on
      libpq5, so I've actually ended up adding an explicit invocation of
      `dpkg-shlibdeps` for `psycopg2`.
      
      I've also updated the build-depends list for the package, which was missing a
      couple of entries.
      1def2981
    • Richard van der Hoff's avatar
      More refactoring in `get_events_as_list` (#5707) · 2091c91f
      Richard van der Hoff authored
      We can now use `_get_events_from_cache_or_db` rather than going right back to
      the database, which means that (a) we can benefit from caching, and (b) it
      opens the way forward to more extensive checks on the original event.
      
      We now always require the original event to exist before we will serve up a
      redaction.
      2091c91f
    • Richard van der Hoff's avatar
      Fix redaction authentication (#5700) · 375162b3
      Richard van der Hoff authored
      Ensures that redactions are correctly authenticated for recent room versions.
      
      There are a few things going on here:
      
       * `_fetch_event_rows` is updated to return a dict rather than a list of rows.
      
       * Rather than returning multiple copies of an event which was redacted
         multiple times, it returns the redactions as a list within the dict.
      
       * It also returns the actual rejection reason, rather than merely the fact
         that it was rejected, so that we don't have to query the table again in
         `_get_event_from_row`.
      
       * The redaction handling is factored out of `_get_event_from_row`, and now
         checks if any of the redactions are valid.
      375162b3
    • Richard van der Hoff's avatar
      Refactor `get_events_as_list` (#5699) · 65c5592b
      Richard van der Hoff authored
      A couple of changes here:
      
      * get rid of a redundant `allow_rejected` condition - we should already have filtered out any rejected
        events before we get to that point in the code, and the redundancy is confusing. Instead, let's stick in
        an assertion just to make double-sure we aren't leaking rejected events by mistake.
      
      * factor out a `_get_events_from_cache_or_db` method, which is going to be important for a 
        forthcoming fix to redactions.
      65c5592b
  4. Jul 16, 2019
  5. Jul 15, 2019
  6. Jul 12, 2019
  7. Jul 11, 2019
    • Amber Brown's avatar
    • Lrizika's avatar
      Improved docs on setting up Postgresql (#5661) · 39e9839a
      Lrizika authored
      Added that synapse_user needs a database to access before it can auth
      Noted you'll need to enable password auth, linked to pg_hba.conf docs
      39e9839a
    • Andrew Morgan's avatar
      small typo fix (#5655) · 78a1cd36
      Andrew Morgan authored
      78a1cd36
    • Richard van der Hoff's avatar
      Clean up exception handling for access_tokens (#5656) · 0a4001eb
      Richard van der Hoff authored
      First of all, let's get rid of `TOKEN_NOT_FOUND_HTTP_STATUS`. It was a hack we
      did at one point when it was possible to return either a 403 or a 401 if the
      creds were missing. We always return a 401 in these cases now (thankfully), so
      it's not needed.
      
      Let's also stop abusing `AuthError` for these cases. Honestly they have nothing
      that relates them to the other places that `AuthError` is used, other than the
      fact that they are loosely under the 'Auth' banner. It makes no sense for them
      to share exception classes.
      
      Instead, let's add a couple of new exception classes: `InvalidClientTokenError`
      and `MissingClientTokenError`, for the `M_UNKNOWN_TOKEN` and `M_MISSING_TOKEN`
      cases respectively - and an `InvalidClientCredentialsError` base class for the
      two of them.
      0a4001eb
Loading