Import forked repositories asynchronously to prevent large repositories from timing out
Preserve synchronous mode of adding a repository since some tasks (e.g. restore/check) require the former.
One side bug fix is that the `ProjectCacheWorker` is also run, updating the repository size and commit numbers properly. Previously all the values were set to 0 when a project were forked.
* Closes#2388
* Closes#2400
See merge request !1231
Clean up overlap between dashboard and explore
- Clean up overlap between dashboard and explore. ... 5d785457
- Split up SnippetsController into separate dashboard and explore sections.
- Use consistent page titles, header titles and sidebars between dashboard and explore sections when signed in or not.
- Consistently case `Back to X` links. 260fcd45
- Link to help from signin page bottom. d92696d3
- Make Help accessible for guests. c258e977
cc @dzaporozhets
See merge request !1260
Syntax highlighting improvements
On the server side:
During development I would occasionally see SanitizationFilter sanitizing
the result of SyntaxHighlightFilter, even though its attributes were
whitelisted. This updates the `clean_spans` transformer to return the
whitelisted node as [suggested by the Sanitize docs](http://git.io/vZR8i).
On the client side:
- Makes the syntax_highlight JS more flexible
- Adds JS specs
- Simplifies highlighting of new notes
- Adds highlighting to Markdown preview
See merge request !1278
Also makes it work when given a parent element containing a
`.js-syntax-highlight` element so for dynamically-added things like
notes or Markdown previews, we can more accurately target just the
element we care about.
Gracefully handle errors in syntax highlighting by leaving the block unformatted
A bug in Rouge caused an Exception:
```undefined method `sub' for :Literal:Symbol```
That caused https://gitlab.com/embeddable-common-lisp/ecl/issues/156 to hit Error 500 and fail to display. If a failure occurs, just render the text as preformatted.
Closes#2433
See merge request !1274
Fix emoji URLs in Markdown when relative_url_root is used
Path/URL helpers (e.g. `asset_url_helper`) already include the relative_url_root, so there is no need to attach it twice.
Also adds the ability to run rspecs with relative_url_defined on the enviornment. For example:
RELATIVE_URL_ROOT=/gitlab rspec
Closes#1728
See merge request !1254
Add Content-Type header to fix a bug which IE can't show image in
markdown when the image is from raw.
modified: CHANGELOG
modified: app/controllers/projects/raw_controller.rb
modified: spec/controllers/projects/raw_controller_spec.rb
Decouple Gitlab::Markdown from the GitlabMarkdownHelper
This module is now the sole source of knowledge for *how* we render
Markdown (and GFM).
See merge request !1223
Expire cache when merge request source branch was removed
Re-implement !1160 for 8.0. Also we have tests for MergeWorker now! Yay ✨
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
See merge request !1224
Apply syntax highlighting to fenced code blocks client-side
Instead of applying the syntax highlighting scheme class to these blocks
server-side, we use Javascript and Gon to apply the user's color scheme
(or the default) client-side.
This will make it easier to cache these blocks in the future because
they're no longer state-dependent.
See merge request !1203
Instead of rendering this value server-side, we use Javascript and Gon
to apply the user's color scheme (or the default) to any syntax
highlighted code blocks.
This will make it easier to cache these blocks in the future because
they're no longer state-dependent.