BigW Consortium Gitlab

  1. 31 Aug, 2016 1 commit
  2. 30 Aug, 2016 1 commit
  3. 04 Aug, 2016 1 commit
  4. 03 Aug, 2016 1 commit
  5. 02 Aug, 2016 2 commits
  6. 29 Jul, 2016 1 commit
    • Method for returning issues readable by a user · 002ad215
      Yorick Peterse authored
      The method Ability.issues_readable_by_user takes a list of users and an
      optional user and returns an Array of issues readable by said user. This
      method in turn is used by
      Banzai::ReferenceParser::IssueParser#nodes_visible_to_user so this
      method no longer needs to get all the available abilities just to check
      if a user has the "read_issue" ability.
      
      To test this I benchmarked an issue with 222 comments on my development
      environment. Using these changes the time spent in nodes_visible_to_user
      was reduced from around 120 ms to around 40 ms.
  7. 26 Jul, 2016 1 commit
  8. 24 Jul, 2016 1 commit
  9. 20 Jul, 2016 1 commit
  10. 19 Jul, 2016 2 commits
  11. 18 Jul, 2016 1 commit
  12. 16 Jul, 2016 1 commit
  13. 14 Jul, 2016 2 commits
  14. 13 Jul, 2016 4 commits
  15. 12 Jul, 2016 1 commit
  16. 11 Jul, 2016 1 commit
    • Optimize system note visibility checking by hiding notes that · af3727b3
      Stan Hu authored
      have been fully redacted and contain cross-project references.
      
      The previous implementation relied on Note#cross_reference_not_visible_for?,
      which essentially tries to render all the Markdown references in a system note
      and only displays the note if the user can see the referring project. But this
      duplicated the work that Banzai::NotesRenderer was doing already. Instead, for
      each note we render, we memoize the number of visible user references and
      use it later if it is available.
      
      Improves #19273
  17. 10 Jul, 2016 2 commits
  18. 08 Jul, 2016 1 commit
  19. 05 Jul, 2016 1 commit
  20. 01 Jul, 2016 1 commit
  21. 30 Jun, 2016 1 commit
    • Handle external issues in IssueReferenceFilter · a4ce2d12
      Yorick Peterse authored
      IssueReferenceFilter will end up processing internal issue references
      when a project uses an external issues tracker while still using
      internal issue references (in the form of `#\d+`). This commit ensures
      that these links are rendered as external issue links, regardless of
      whether the project one currently views uses an internal or external
      issues tracker.
      
      Fixes gitlab-org/gitlab-ce#19036, gitlab-com/performance#16
  22. 27 Jun, 2016 1 commit
  23. 24 Jun, 2016 1 commit
    • Support for rendering/redacting multiple documents · d470f3d1
      Yorick Peterse authored
      This commit changes the way certain documents are rendered (currently
      only Notes) and how documents are redacted. Previously both rendering
      and redacting would run on a per document basis. The result of this was
      that for every document we'd have to run countless queries just to
      figure out if we could display a set of links or not.
      
      This commit changes things around so that redacting Markdown documents
      is no longer tied into the html-pipeline Gem. This in turn allows it to
      redact multiple documents in a single pass, thus reducing the number of
      queries needed.
      
      In turn rendering issue/merge request notes has been adjusted to take
      advantage of this new setup. Instead of rendering Markdown somewhere
      deep down in a view the Markdown is rendered and redacted in the
      controller (taking the current user and all that into account). This has
      been done in such a way that the "markdown()" helper method can still be
      used on its own.
      
      This particular commit also paves the way for caching rendered HTML on
      object level. Right now there's an accessor method Note#note_html which
      is used for setting/getting the rendered HTML. Once we cache HTML on row
      level we can simply change this field to be a column and call a "save"
      whenever needed and we're pretty much done.
  24. 21 Jun, 2016 2 commits
    • Handle external issues in IssueReferenceFilter · ceeba75c
      Yorick Peterse authored
      In the past this class would use Project#get_issue to retrieve an issue
      by its ID. This method would automatically determine whether to return
      an Issue or ExternalIssue.
      
      This commit changes IssueReferenceFilter to handle external issues again
      and in a somewhat more explicit manner than before.
      
      Fixes gitlab-org/gitlab-ce#18827
    • Optimize Banzai::Filter::RelativeLinkFilter · ca696175
      Alejandro Rodríguez authored
          A lot of git operations were being repeated, for example, to build a url
          you would ask if the path was a Tree, which would call a recursive routine
          in Gitlab::Git::Tree#where, then ask if the path was a Blob, which would
          call a recursive routine at Gitlab::Git::Blob#find, making reference to
          the same git objects several times. Now we call Rugged::Tree#path, which
          allows us to determine the type of the path in one pass.
      
          Some other minor improvement added, like saving commonly used references
          instead of calculating them each time.
  25. 18 Jun, 2016 2 commits
  26. 16 Jun, 2016 5 commits
  27. 13 Jun, 2016 1 commit