Commit Graph
22224 Commits
Author SHA1 Message Date
Kamil Trzcinski 567460d16d Added missing comma [ci skip] 2015-10-15 18:11:46 +02:00
Dmitriy Zaporozhets c82755f539 Update redcarpet gem. Fixes gem memory leak
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-10-15 18:01:24 +02:00
Kamil Trzcinski 71d0cfcff6 Make the builds view and warning notice nicer 2015-10-15 17:14:01 +02:00
Dmitriy Zaporozhets 19cfa86aa3 Merge branch 'rs-markdown-typography' into 'master'
Markdown typography CSS fixes

The `!important` flags recently added to the `md-typography`
mixin's `pre` elements were overriding the background and
foreground colors for syntax highlighting.

| Before | After |
|:------:|:-----:|
| ![Screen_Shot_2015-09-25_at_3.32.32_PM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/802163bd9f46864ac89e7be165951f07/Screen_Shot_2015-09-25_at_3.32.32_PM.png) | ![Screen_Shot_2015-09-25_at_3.33.30_PM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/6be72036653378405320085324dff5ad/Screen_Shot_2015-09-25_at_3.33.30_PM.png) |

See merge request !1442
2015-10-15 14:11:13 +00:00
Dmitriy Zaporozhets 353ddbc795 Merge branch 'stanhu/gitlab-ce-fix-api-mr-comment-notifications' 2015-10-15 15:56:43 +02:00
Kamil Trzcinski 0d09b5fefc Fix builds view count indicator 2015-10-15 15:50:40 +02:00
Valery Sizov 62bf2eb862 Merge branch 'fix/improve_reset_service_password_v2' into 'master'
Improve invalidation of stored service password if the endpoint URL is changed (V2)

New version of !1583, using the same failproof logic but this time mirroring the name and behaviour of the change-tracking methods of ActiveModel::Dirty in order to make it clearer and more natural.

Added more tests to clarify the expected behaviour.

This is an alternative to !1594

/cc @vsizov @rspeicher

See merge request !1600
2015-10-15 13:47:37 +00:00
Yorick Peterse 5ce933599c Merge branch 'user-by-login-performance' into 'master'
Improve User.by_login performance

This greatly speeds up the performance of `User.by_login`. I adopted some changes from @haynes in this patch, the credits go to him for coming up with those originally.

Fixes #2341

See merge request !1545
2015-10-15 13:41:17 +00:00
Jacob Vosmaer 999051bc91 Use gitlab-git-http-server 0.3.0 2015-10-15 14:59:06 +02:00
Dmitriy Zaporozhets c0a6836be4 Merge branch 'view-issue-performance' 2015-10-15 14:37:04 +02:00
Douwe Maan d843cbe08d Sentences end in periods. 2015-10-15 13:44:32 +02:00
Douwe Maan 4b28f2d999 Merge branch 'git-archive-golang' into 'master'
Let gitlab-git-http-server handle archive downloads

This change relies on changes in gitlab_git and gitlab-git-http-server.

fixes #2429

See merge request !1548
2015-10-15 11:43:14 +00:00
Douwe Maan 9c2214f202 Remove stray conflict marker 2015-10-15 13:41:10 +02:00
Kamil Trzciński daccc54d25 Merge branch 'builds-view' into 'master'
Added builds view

![Screen_Shot_2015-10-13_at_19.02.48](https://gitlab.com/gitlab-org/gitlab-ce/uploads/95bb3a7d9d603678fdd077558637045d/Screen_Shot_2015-10-13_at_19.02.48.png)

/cc @dzaporozhets @vsizov 


See merge request !1593
2015-10-15 11:35:57 +00:00
Jacob Vosmaer f7e0357840 Track compatible gitlab-git-http-server version 2015-10-15 13:22:28 +02:00
Dmitriy Zaporozhets 524b3db30c Merge branch 'fix-path-with-leading-dot-error' into 'master'
Fix error preventing displaying of commit data for a directory with a leading dot

Directories with leading dots erroneously get rejected by the route controller if git
ref regex is used in constraints. This prevents commit data from being loaded. The regex verification is now done in controller.

Closes https://github.com/gitlabhq/gitlabhq/issues/8763


See merge request !1574
2015-10-15 10:36:24 +00:00
Dmitriy Zaporozhets 465a20888a Merge branch 'rs-remove-guard' into 'master'
Remove guard-rspec and its supporting gems



See merge request !1551
2015-10-15 10:34:28 +00:00
Yorick Peterse 97e02f4bc9 Added documentation on the various profiling tools 2015-10-15 12:15:18 +02:00
Alex Lossent 98e666ab6a Improve invalidation of stored service password if the endpoint URL is changed
Password can now be specified at the same time as the new URL, and the service
template admin pages now work.
2015-10-15 12:07:59 +02:00
Yorick Peterse bed29940ef Fixed Rubocop styling issues 2015-10-15 12:05:01 +02:00
Yorick Peterse e5925d073e Renamed Note.inc_associations to with_associations 2015-10-15 12:05:01 +02:00
Yorick Peterse 9f5811116c Changelog entry for issue page speedups 2015-10-15 12:05:01 +02:00
Yorick Peterse f3980e230f Don't use link_to/image_tag where not needed
In these particular instances we can just use HAML tags directly. This
can shave off some time spent loading issue pages, though this depends
on the amount of comments being displayed.

When viewing https://gitlab.com/gitlab-org/gitlab-ce/issues/2164 locally
these changes reduce loading time by about 400 ms in total.
2015-10-15 12:05:01 +02:00
Yorick Peterse 3025b71141 Improve ProjectTeam#max_member_access performance
By comparing objects in Ruby we can greatly improve the performance of
this method. In the worst case (should no data be eager loaded) this
will run the same amount of queries as before, in the best case (when
data _is_ eager loadeD) it requires no queries at all.

The added benchmark used to produce around 273 iterations per second.
With this commit this has been increased to almost 40 000 iterations per
second: a speedup of roughly 145 times.

Combined with eager loading Note associations this results in about 30
queries less when viewing a single issue, this in turn cuts down the
loading time by 30-40%.
2015-10-15 12:05:01 +02:00
Yorick Peterse b5f8161dae Eager load project associations for notes
This ensures that when viewing an issue each note already has the
associated project, project members, group and group members available.
Since this information is requres for every note this results in quite
the reduction of SQL queries being executed.
2015-10-15 12:05:01 +02:00
Yorick Peterse 8237da0d4a Eager load note projects when viewing issues 2015-10-15 12:05:01 +02:00
Yorick Peterse d4832b0341 Added rack-lineprof for development
This can be used to measure the time (roughly) spent on a per line
basis. This can also be used to measure timings for views, for example
by adding the following to a URL:

   ?lineprof=app/views/projects/notes/_note

rack-lineprof is only enabled when:

1. The application runs in development mode
2. The used Ruby is MRI
3. The environment variable ENABLE_LINEPROF is set to a non-empty value
2015-10-15 12:05:01 +02:00
Yorick Peterse 7971ed5dac Added active_record_query_trace
This can be used to track down where queries originate from, regardless
of whether they're caused by N+1 problems or not. This can be enabled by
setting the environment variable ENABLE_QUERY_TRACE to a non-empty value
(e.g. "true").
2015-10-15 12:05:01 +02:00
Yorick Peterse fa3d7db390 Added Bullet to the Gemfile
This can be used to resolve N+1 query problems. Bullet is disabled by
default and can be enabled by starting Rails with the environment
variable ENABLE_BULLET set to a non empty value (e.g. "true").
2015-10-15 12:05:01 +02:00
Yorick Peterse 39fcd445fa Use note.author for issue comment avatars
This removes the need for running a query to find the User object again
based on the supplied Email address.
2015-10-15 12:05:01 +02:00
Yorick Peterse 1554786c6a Eager load various issue/note associations
This ensures we don't end up running N+1 queries for the objects in the
affected collections.
2015-10-15 12:05:01 +02:00
Yorick Peterse ff8f7fb0a1 Re-use User for avatars in link_to_member 2015-10-15 12:05:01 +02:00
Yorick Peterse 9496356367 Re-use User objects for avatar_icon where possible
This removes the need for running an extra SQL query in these cases.
2015-10-15 12:05:01 +02:00
Yorick Peterse 693e63f523 Allow avatar_icon to operate on a User
If the User object is already known before calling this method being
able to re-use said object can save us an extra SQL query.
2015-10-15 12:05:01 +02:00
Yorick Peterse 72f428c7d2 Improve performance of User.by_login
Performance is improved in two steps:

1. On PostgreSQL an expression index is used for checking lower(email)
   and lower(username).
2. The check to determine if we're searching for a username or Email is
   moved to Ruby. Thanks to @haynes for suggesting and writing the
   initial implementation of this.

Moving the check to Ruby makes this method an additional 1.5 times
faster compared to doing the check in the SQL query.

With performance being improved I've now also tweaked the amount of
iterations required by the User.by_login benchmark. This method now runs
between 900 and 1000 iterations per second.
2015-10-15 11:58:25 +02:00
Kamil Trzcinski 9fa209e1d8 Remove unneeded change 2015-10-15 11:51:45 +02:00
Douwe Maan c993481d99 Merge branch 'master' into git-archive-golang 2015-10-15 11:47:36 +02:00
Douwe Maan 95f0440a78 Merge branch 'master' into rs-redactor-filter 2015-10-15 11:26:58 +02:00
Jacob Vosmaer 83f04853e9 Update gitlab_git to 7.2.19 2015-10-15 11:14:39 +02:00
Dmitriy Zaporozhets fb7785628a Merge branch 'rs-update-uglifier' into 'master'
Update uglifier to ~> 2.7.2

Fixes a security vulnerability:

- https://github.com/lautis/uglifier/pull/86
- https://github.com/mishoo/UglifyJS2/issues/751
- https://zyan.scripts.mit.edu/blog/backdooring-js/

See merge request !1590
2015-10-15 08:21:18 +00:00
Douwe Maan e2045f5e68 Merge branch 'rs-issues_sentence' into 'master'
Simplify the `issues_sentence` helper



See merge request !1598
2015-10-15 07:27:53 +00:00
Douwe Maan 7ad6852363 Merge branch 'rs-mr-tabs-scroll' into 'master'
Prevent a JS error in MergeRequestTabs

When `window.location.hash` is pointing to a note, e.g. `#note_1234`,
`scrollToElement` would throw an error because a selector such as
`.commits #note_1234` doesn't exist, so `offset()` returned `undefined`.

This error would prevent subsequent calls from running, which caused the
loading spinner to never be hidden.

Now we ensure the selector returns a valid element before trying to
scroll to it.

This is the proper fix for !1553.

See merge request !1597
2015-10-15 07:26:39 +00:00
Han Loong Liauw 45e11d95f2 fix spinach features to use new button wordings
Also fixed an accidental deletion of pratial
2015-10-15 17:59:17 +11:00
Han Loong Liauw f7ed469ece change capitalisation in buttons 2015-10-15 15:24:26 +11:00
Douwe Maan ef44138ce4 Merge branch 'master' into rs-redactor-filter 2015-10-14 22:42:59 +02:00
Kamil Trzcinski 4271a2b8ac Fix tests 2015-10-14 22:42:36 +02:00
Robert Speicher 976400c1e6 Merge branch 'incoming-email-config' into 'master'
Make Reply by email easier to configure

Builds on !1566.

Omnibus companion MR: gitlab-org/omnibus-gitlab!510 (cc @marin)

See merge request !1580
2015-10-14 20:38:36 +00:00
Robert Speicher 459b882131 Shut up, Rubocop
[ci skip]
2015-10-14 16:31:54 -04:00
Robert Speicher 9750de4943 Simplify the issues_sentence helper 2015-10-14 16:30:19 -04:00
Robert Speicher 123669a551 Merge branch 'simplify-cross-references' into 'master'
Simplify code around (cross)-references

See merge request !1568
2015-10-14 20:10:34 +00:00