<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/gitlab/gitlab-ce.git/lib/banzai, branch docs-pages-force-https</title>
<subtitle>gitlab.com: gitlab-org/gitlab-ce.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/'/>
<entry>
<title>Do not rewrite relative links for system notes</title>
<updated>2019-06-20T16:15:59+00:00</updated>
<author>
<name>Mario de la Ossa</name>
<email>mariodelaossa@gmail.com</email>
</author>
<published>2019-06-19T01:28:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=35a39c1d3476f0398a2846772e075b9a003bd623'/>
<id>35a39c1d3476f0398a2846772e075b9a003bd623</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow emoji in label and milestone references</title>
<updated>2019-06-07T09:05:57+00:00</updated>
<author>
<name>Sean McGivern</name>
<email>sean@gitlab.com</email>
</author>
<published>2019-06-06T16:49:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=1617aa27562c6c92c981cadf13f0fb999558e1cc'/>
<id>1617aa27562c6c92c981cadf13f0fb999558e1cc</id>
<content type='text'>
If we put the emoji filter before the reference filters, each emoji will
have a wrapper element that prevents the reference filter from detecting
the presence of the emoji.

As the emoji filter now runs after the reference filters, references
must contain a literal emoji, not the GitLab Flavored Markdown
versions (:100`, for example).

A weird side-effect is that if you have a label with the 100 emoji, and
a label named :100:, then trying to reference the latter will work (link
to the correct label), but will render with the 100 emoji. I'm
comfortable with that edge case, I think.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If we put the emoji filter before the reference filters, each emoji will
have a wrapper element that prevents the reference filter from detecting
the presence of the emoji.

As the emoji filter now runs after the reference filters, references
must contain a literal emoji, not the GitLab Flavored Markdown
versions (:100`, for example).

A weird side-effect is that if you have a label with the 100 emoji, and
a label named :100:, then trying to reference the latter will work (link
to the correct label), but will render with the 100 emoji. I'm
comfortable with that edge case, I think.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use Redis for CacheMarkDownField on non AR models</title>
<updated>2019-06-05T05:19:59+00:00</updated>
<author>
<name>Patrick Bajao</name>
<email>ebajao@gitlab.com</email>
</author>
<published>2019-06-05T04:59:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=2eecfd8f9d111c6518930b818a16daea8263b37f'/>
<id>2eecfd8f9d111c6518930b818a16daea8263b37f</id>
<content type='text'>
This allows using `CacheMarkdownField` for models that are not backed
by ActiveRecord.

When the including class inherits `ActiveRecord::Base` we include
`Gitlab::MarkdownCache::ActiveRecord::Extension`. This will cause the
markdown fields to be rendered and the generated HTML stored in a
`&lt;field&gt;_html` attribute on the record. We also store the version
used for generating the markdown.

All other classes that include this model will include the
`Gitlab::MarkdownCache::Redis::Extension`. This add the `&lt;field&gt;_html`
attributes to that model and will generate the html in them. The
generated HTML will be cached in redis under the key
`markdown_cache:&lt;class&gt;:&lt;id&gt;`. The class this included in must
therefore respond to `id`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows using `CacheMarkdownField` for models that are not backed
by ActiveRecord.

When the including class inherits `ActiveRecord::Base` we include
`Gitlab::MarkdownCache::ActiveRecord::Extension`. This will cause the
markdown fields to be rendered and the generated HTML stored in a
`&lt;field&gt;_html` attribute on the record. We also store the version
used for generating the markdown.

All other classes that include this model will include the
`Gitlab::MarkdownCache::Redis::Extension`. This add the `&lt;field&gt;_html`
attributes to that model and will generate the html in them. The
generated HTML will be cached in redis under the key
`markdown_cache:&lt;class&gt;:&lt;id&gt;`. The class this included in must
therefore respond to `id`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'security-60143-address-xss-issue-master' into 'master'</title>
<updated>2019-06-03T17:01:25+00:00</updated>
<author>
<name>Robert Speicher</name>
<email>rspeicher@gmail.com</email>
</author>
<published>2019-06-03T17:01:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=5906fb2e45f352b8fc02f0e98a6148d0c0b2db59'/>
<id>5906fb2e45f352b8fc02f0e98a6148d0c0b2db59</id>
<content type='text'>
Reject slug+uri concat if slug is deemed unsafe

See merge request gitlab/gitlabhq!3108</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reject slug+uri concat if slug is deemed unsafe

See merge request gitlab/gitlabhq!3108</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'security-fix-project-existence-disclosure-master' into 'master'</title>
<updated>2019-06-03T12:33:57+00:00</updated>
<author>
<name>GitLab Release Tools Bot</name>
<email>robert+release-tools@gitlab.com</email>
</author>
<published>2019-06-03T12:33:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=c45c64ce298fab6eca6c54142ab5844a4b2c5c63'/>
<id>c45c64ce298fab6eca6c54142ab5844a4b2c5c63</id>
<content type='text'>
Fix url redaction for issue links

See merge request gitlab/gitlabhq!3091</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix url redaction for issue links

See merge request gitlab/gitlabhq!3091</pre>
</div>
</content>
</entry>
<entry>
<title>Reject slug+uri concat if slug is deemed unsafe</title>
<updated>2019-05-24T19:33:24+00:00</updated>
<author>
<name>Kerri Miller</name>
<email>kerrizor@kerrizor.com</email>
</author>
<published>2019-05-20T20:24:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=a76fdcb7a30c6244ffb11a2e672e16d1e5b413b2'/>
<id>a76fdcb7a30c6244ffb11a2e672e16d1e5b413b2</id>
<content type='text'>
First reported:
  https://gitlab.com/gitlab-org/gitlab-ce/issues/60143

When the page slug is "javascript:" and we attempt to link to a relative
path (using `.` or `..`) the code will concatenate the slug and the uri.
This MR adds a guard to that concat step that will return `nil` if the
incoming slug matches against any of the "unsafe" slug regexes;
currently this is only for the slug "javascript:" but can be extended if
needed. Manually tested against a non-exhaustive list from OWASP of
common javascript XSS exploits that have to to with mangling the
"javascript:" method, and all are caught by this change or by existing
code that ingests the user-specified slug.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
First reported:
  https://gitlab.com/gitlab-org/gitlab-ce/issues/60143

When the page slug is "javascript:" and we attempt to link to a relative
path (using `.` or `..`) the code will concatenate the slug and the uri.
This MR adds a guard to that concat step that will return `nil` if the
incoming slug matches against any of the "unsafe" slug regexes;
currently this is only for the slug "javascript:" but can be extended if
needed. Manually tested against a non-exhaustive list from OWASP of
common javascript XSS exploits that have to to with mangling the
"javascript:" method, and all are caught by this change or by existing
code that ingests the user-specified slug.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix milestone references with HTML entities in the name</title>
<updated>2019-05-24T09:07:21+00:00</updated>
<author>
<name>Sean McGivern</name>
<email>sean@gitlab.com</email>
</author>
<published>2019-05-23T14:28:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=17b97bf029a7085f6b726071a15f5d231510f1b6'/>
<id>17b97bf029a7085f6b726071a15f5d231510f1b6</id>
<content type='text'>
When a milestone name contained an HTML entity that would be escaped (&amp;,
&lt;, &gt;), then it wasn't possible to refer to this milestone by name, or
use it in a quick action.

This already worked for labels, but not for milestones. We take care to
re-escape un-matched milestones, too.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a milestone name contained an HTML entity that would be escaped (&amp;,
&lt;, &gt;), then it wasn't possible to refer to this milestone by name, or
use it in a quick action.

This already worked for labels, but not for milestones. We take care to
re-escape un-matched milestones, too.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'patch-49' into 'master'</title>
<updated>2019-05-06T07:41:10+00:00</updated>
<author>
<name>Sean McGivern</name>
<email>sean@gitlab.com</email>
</author>
<published>2019-05-06T07:41:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=ff64584cfaddb170cfa3a5c647ee4783cdb6058e'/>
<id>ff64584cfaddb170cfa3a5c647ee4783cdb6058e</id>
<content type='text'>
No leading/trailing spaces when generating heading ids (Fixes #57528)

Closes #57528

See merge request gitlab-org/gitlab-ce!27025</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No leading/trailing spaces when generating heading ids (Fixes #57528)

Closes #57528

See merge request gitlab-org/gitlab-ce!27025</pre>
</div>
</content>
</entry>
<entry>
<title>Run rubocop -a on CE files</title>
<updated>2019-05-05T10:24:28+00:00</updated>
<author>
<name>Stan Hu</name>
<email>stanhu@gmail.com</email>
</author>
<published>2019-05-05T10:19:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=f93b2e02a56a3b1f3041119e8302d43aeafc8284'/>
<id>f93b2e02a56a3b1f3041119e8302d43aeafc8284</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix url redaction for issue links</title>
<updated>2019-05-03T13:09:20+00:00</updated>
<author>
<name>Patrick Derichs</name>
<email>pderichs@gitlab.com</email>
</author>
<published>2019-05-03T13:09:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/gitlab/gitlab-ce.git/commit/?id=b0fbf001dab134b6638411f0be209bc0d1460519'/>
<id>b0fbf001dab134b6638411f0be209bc0d1460519</id>
<content type='text'>
Add changelog entry

Add missing href to all redactor specs and removed href assignment

Remove obsolete spec

If original_content is given, it should be used for link content
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add changelog entry

Add missing href to all redactor specs and removed href assignment

Remove obsolete spec

If original_content is given, it should be used for link content
</pre>
</div>
</content>
</entry>
</feed>
