<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitlab/gitlab-ce.git/lib/banzai/reference_extractor.rb, branch github-import-docs</title>
<subtitle>gitlab.com: gitlab-org/gitlab-ce.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/'/>
<entry>
<title>Support Markdown rendering using multiple projects</title>
<updated>2018-04-11T12:10:19+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2018-04-03T13:45:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=daad7144ec7c0173439eeadd61590442e40a6051'/>
<id>daad7144ec7c0173439eeadd61590442e40a6051</id>
<content type='text'>
This refactors the Markdown pipeline so it supports the rendering of
multiple documents that may belong to different projects. An example of
where this happens is when displaying the event feed of a group. In this
case we retrieve events for all projects in the group. Previously we
would group events per project and render these chunks separately, but
this would result in many SQL queries being executed. By extending the
Markdown pipeline to support this out of the box we can drastically
reduce the number of SQL queries.

To achieve this we introduce a new object to the pipeline:
Banzai::RenderContext. This object simply wraps two other objects: an
optional Project instance, and an optional User instance. On its own
this wouldn't be very helpful, but a RenderContext can also be used to
associate HTML documents with specific Project instances. This work is
done in Banzai::ObjectRenderer and allows us to reuse as many queries
(and results) as possible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This refactors the Markdown pipeline so it supports the rendering of
multiple documents that may belong to different projects. An example of
where this happens is when displaying the event feed of a group. In this
case we retrieve events for all projects in the group. Previously we
would group events per project and render these chunks separately, but
this would result in many SQL queries being executed. By extending the
Markdown pipeline to support this out of the box we can drastically
reduce the number of SQL queries.

To achieve this we introduce a new object to the pipeline:
Banzai::RenderContext. This object simply wraps two other objects: an
optional Project instance, and an optional User instance. On its own
this wouldn't be very helpful, but a RenderContext can also be used to
associate HTML documents with specific Project instances. This work is
done in Banzai::ObjectRenderer and allows us to reuse as many queries
(and results) as possible.
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable Style/DotPosition Rubocop :cop:</title>
<updated>2017-06-21T13:48:12+00:00</updated>
<author>
<name>Grzegorz Bizon</name>
<email>grzegorz@gitlab.com</email>
</author>
<published>2017-06-21T13:48:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=0430b7644101fc70ed4be6bf69ccf05b900f4cdf'/>
<id>0430b7644101fc70ed4be6bf69ccf05b900f4cdf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Create directly_addressed Todos when mentioned in beginning of a line</title>
<updated>2017-02-08T16:23:34+00:00</updated>
<author>
<name>Ershad Kunnakkadan</name>
<email>ershad92@gmail.com</email>
</author>
<published>2016-12-05T12:12:22+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=3a23639bc04729cfdc37e4b8ebf46358c3d5a137'/>
<id>3a23639bc04729cfdc37e4b8ebf46358c3d5a137</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Retrieve rendered HTML from cache in one request</title>
<updated>2016-07-21T19:17:25+00:00</updated>
<author>
<name>Ahmad Sherif</name>
<email>me@ahmadsherif.com</email>
</author>
<published>2016-07-21T17:15:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=0c14c6332d38704a7bfd8916a8deedd5c5808978'/>
<id>0c14c6332d38704a7bfd8916a8deedd5c5808978</id>
<content type='text'>
See #19985
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See #19985
</pre>
</div>
</content>
</entry>
<entry>
<title>Split Markdown rendering &amp; reference gathering</title>
<updated>2016-05-26T15:14:00+00:00</updated>
<author>
<name>Yorick Peterse</name>
<email>yorickpeterse@gmail.com</email>
</author>
<published>2016-05-26T11:16:43+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=86166d28029d5fcc729f7b7f5a41635c2e783a9e'/>
<id>86166d28029d5fcc729f7b7f5a41635c2e783a9e</id>
<content type='text'>
This splits the Markdown rendering and reference extraction phases into
two distinct code bases. The reference extraction phase no longer relies
on the html-pipeline Gem (and any related code) and allows for
extracting of references from multiple HTML nodes in a single pass. This
means that if you want to extract user references from 200 comments you
no longer need to run 200 times N number of queries, instead only a
handful of queries may be needed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This splits the Markdown rendering and reference extraction phases into
two distinct code bases. The reference extraction phase no longer relies
on the html-pipeline Gem (and any related code) and allows for
extracting of references from multiple HTML nodes in a single pass. This
means that if you want to extract user references from 200 comments you
no longer need to run 200 times N number of queries, instead only a
handful of queries may be needed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Prevent circular reference error in Banzai</title>
<updated>2016-01-14T10:30:28+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2016-01-07T14:46:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=2a20c0e590be2f673188f1a0d27409a714800c89'/>
<id>2a20c0e590be2f673188f1a0d27409a714800c89</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use lazy reference extractor to get issue's MRs</title>
<updated>2015-12-15T15:57:11+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2015-12-15T15:57:11+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=6560d053ed0c2d5b0a00918e64417bd6b1de4d73'/>
<id>6560d053ed0c2d5b0a00918e64417bd6b1de4d73</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Move Markdown/reference logic from Gitlab::Markdown to Banzai</title>
<updated>2015-12-15T14:51:16+00:00</updated>
<author>
<name>Douwe Maan</name>
<email>douwe@gitlab.com</email>
</author>
<published>2015-12-15T14:51:16+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/gitlab/gitlab-ce.git/commit/?id=7781bda9bd82997f4a03de4cf911b1156ceb2cde'/>
<id>7781bda9bd82997f4a03de4cf911b1156ceb2cde</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
