BigW Consortium Gitlab

  1. 14 Sep, 2016 1 commit
    • Handle encoding in non-binary Blob instances · 0bc443e3
      Yorick Peterse authored
      gitlab_git 10.6.4 relies on Rugged marking blobs as binary or not,
      instead of relying on Linguist. Linguist in turn would mark text blobs
      as binary whenever they would contain byte sequences that could not be
      encoded using UTF-8.
      
      However, marking such blobs as binary is not correct. If one pushes a
      Markdown document with invalid character sequences it's still a text
      based Markdown document and not some random binary blob.
      
      This commit overwrites Blob#data so it automatically converts text-based
      content to UTF-8 (the encoding we use everywhere else) while taking care
      of replacing any invalid sequences with the UTF-8 replacement character.
      The data of binary blobs is left as-is.
  2. 15 Aug, 2016 1 commit
    • Limit the size of SVGs when viewing them as blobs · 8171544b
      Yorick Peterse authored
      This ensures that SVGs greater than 2 megabytes are not scrubbed and
      rendered. This in turn prevents requests from timing out due to
      reading/scrubbing large SVGs potentially taking a lot of time (and
      memory). The use of 2 megabytes is completely arbitrary.
      
      Fixes gitlab-org/gitlab-ce#1435
  3. 26 Jul, 2016 1 commit
  4. 19 Feb, 2016 1 commit
    • Add a `Blob` model that wraps `Gitlab::Git::Blob` · 8c454b36
      Robert Speicher authored
      This allows us to take advantage of Rails' `to_partial_path` to render
      the correct partial based on the Blob type, rather than cluttering the
      view with conditionals.
      
      It also allows (and will allow in the future) better encapsulation for
      Blob-related logic which makes sense for our Rails app but might not
      make as much sense for the core `gitlab_git` library, such as detecting
      if the blob is an SVG.