summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Added documentation on the various profiling toolsview-issue-performanceYorick Peterse2015-10-151-0/+56
|
* Fixed Rubocop styling issuesYorick Peterse2015-10-152-5/+5
|
* Renamed Note.inc_associations to with_associationsYorick Peterse2015-10-152-2/+2
|
* Changelog entry for issue page speedupsYorick Peterse2015-10-151-0/+1
|
* Don't use link_to/image_tag where not neededYorick Peterse2015-10-153-8/+8
| | | | | | | | | 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.
* Improve ProjectTeam#max_member_access performanceYorick Peterse2015-10-152-3/+39
| | | | | | | | | | | | | | | 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%.
* Eager load project associations for notesYorick Peterse2015-10-151-1/+2
| | | | | | | 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.
* Eager load note projects when viewing issuesYorick Peterse2015-10-151-1/+4
|
* Added rack-lineprof for developmentYorick Peterse2015-10-154-1/+41
| | | | | | | | | | | | | | 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
* Added active_record_query_traceYorick Peterse2015-10-153-0/+8
| | | | | | | 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").
* Added Bullet to the GemfileYorick Peterse2015-10-153-0/+12
| | | | | | 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").
* Use note.author for issue comment avatarsYorick Peterse2015-10-151-1/+1
| | | | | This removes the need for running a query to find the User object again based on the supplied Email address.
* Eager load various issue/note associationsYorick Peterse2015-10-154-3/+9
| | | | | This ensures we don't end up running N+1 queries for the objects in the affected collections.
* Re-use User for avatars in link_to_memberYorick Peterse2015-10-152-1/+15
|
* Re-use User objects for avatar_icon where possibleYorick Peterse2015-10-1516-17/+17
| | | | This removes the need for running an extra SQL query in these cases.
* Allow avatar_icon to operate on a UserYorick Peterse2015-10-152-3/+16
| | | | | 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.
* Merge branch 'rs-update-uglifier' into 'master' Dmitriy Zaporozhets2015-10-152-3/+3
|\ | | | | | | | | | | | | | | | | | | | | 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
| * Update uglifier to ~> 2.7.2rs-update-uglifierRobert Speicher2015-10-142-3/+3
| |
* | Merge branch 'rs-issues_sentence' into 'master' Douwe Maan2015-10-151-1/+1
|\ \ | | | | | | | | | | | | | | | | | | Simplify the `issues_sentence` helper See merge request !1598
| * | Simplify the `issues_sentence` helperrs-issues_sentenceRobert Speicher2015-10-141-1/+1
| | |
* | | Merge branch 'rs-mr-tabs-scroll' into 'master' Douwe Maan2015-10-151-4/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | Prevent a JS error in MergeRequestTabsrs-mr-tabs-scrollRobert Speicher2015-10-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge branch 'incoming-email-config' into 'master' Robert Speicher2015-10-1410-254/+201
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make Reply by email easier to configure Builds on !1566. Omnibus companion MR: gitlab-org/omnibus-gitlab!510 (cc @marin) See merge request !1580
| * | | | Shut up, RubocopRobert Speicher2015-10-141-1/+1
| | | | | | | | | | | | | | | | | | | | [ci skip]
| * | | | Add defaults for incoming_email ssl and start_tls.incoming-email-configDouwe Maan2015-10-141-4/+6
| | | | |
| * | | | Make Reply by email easier to configureDouwe Maan2015-10-1310-254/+199
| | | | |
* | | | | Merge branch 'simplify-cross-references' into 'master' Robert Speicher2015-10-1419-113/+70
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | Simplify code around (cross)-references See merge request !1568
| * | | | Make Mentionable#cross_reference_exists? private.simplify-cross-referencesDouwe Maan2015-10-142-13/+6
| | | | |
| * | | | Shut up, RubocopRobert Speicher2015-10-141-1/+1
| | | | |
| * | | | Use `to_reference` where possible.Douwe Maan2015-10-131-2/+2
| | | | |
| * | | | Fix mentionable specsDouwe Maan2015-10-124-7/+6
| | | | |
| * | | | Remove useless assignmentDouwe Maan2015-10-121-1/+1
| | | | |
| * | | | Chaining ftwDouwe Maan2015-10-121-5/+1
| | | | |
| * | | | Fix cross-references originating from notesDouwe Maan2015-10-124-20/+7
| | | | |
| * | | | Simplify code around (cross)-referencesDouwe Maan2015-10-1214-76/+58
| | | | |
* | | | | Merge branch 'show_pending_warning' into 'master' Kamil Trzciński2015-10-1415-24/+257
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Show warning when build is pending and there are not runners This change is based on: !1530. This resolves #2967. See merge request !1573
| * | | | | Fix warning signshow_pending_warningKamil Trzcinski2015-10-143-6/+5
| | | | | |
| * | | | | Fix specsKamil Trzcinski2015-10-141-1/+1
| | | | | |
| * | | | | Show warning if build doesn't have runners with specified tags or runners ↵Kamil Trzcinski2015-10-1414-22/+256
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | didn't connect recently Slightly refactor runner status detection: moving it to Runner class Signed-off-by: Kamil Trzcinski <ayufan@ayufan.eu>
* | | | | | Merge branch 'predefined_build_variables' into 'master' Kamil Trzciński2015-10-145-19/+70
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a few predefined variables to CI builds This adds CI_BUILD_TAG, CI_BUILD_STAGE, CI_BUILD_NAME and CI_BUILD_TRIGGERED to build environment. This change is based on: !1530 See merge request !1572
| * | | | | | Use tag? instead of tag to indicate that this is booleanpredefined_build_variablesKamil Trzcinski2015-10-141-1/+1
| | | | | | |
| * | | | | | Added CI_BUILD_TAG, _STAGE, _NAME and _TRIGGERED to CI buildsKamil Trzcinski2015-10-145-19/+70
| |/ / / / /
* | | | | | Merge branch 'uploads_path_fix' into 'master' Valery Sizov2015-10-1417-10/+225
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix: Images cannot show when projects' path was changed Fixes #1443 See merge request !1521
| * | | | | | Fix: Images cannot show when projects' path was changeduploads_path_fixValery Sizov2015-10-1417-10/+225
| | | | | | |
* | | | | | | Merge branch 'revert_service_passwd' into 'master' Valery Sizov2015-10-146-78/+13
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "Improve invalidation of stored service password if the endpoint URL is changed" This reverts commit b46397548056e4e8ef00efe4f641c61ba1dd5230. See merge request !1595
| * | | | | | Revert "Improve invalidation of stored service password if the endpoint URL ↵Valery Sizov2015-10-146-78/+13
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | is changed" This reverts commit b46397548056e4e8ef00efe4f641c61ba1dd5230.
* | | | | | Merge branch 'fix/improve_reset_service_password' into 'master' Valery Sizov2015-10-146-13/+78
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve invalidation of stored service password if the endpoint URL is changed A number of issues were found in !1490 and !1558 (triggered by support request 7395) * It is not possible to set a new URL and a password at the same time (new password is ignored) * An error occurs on the Service Templates admin pages (prop_updated? was referencing the service's project, which is not defined for templates) * Passwords are reset on every save in Service Templates admin pages This should fix these 3 issues by respectively: * Differentiating a property that has been assigned a new value (regardless of the new value) and a property that has been assigned a new value that is different from the old one * Providing an alternate implementation to detected updated properties, not relying on the service's project * Filtering an empty password parameter passed to the Service Templates admin page like on the project service page See merge request !1583
| * | | | | Improve invalidation of stored service password if the endpoint URL is changedAlex Lossent2015-10-146-13/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It now allows to specify a password at the same time as the new URL, and works on the service template admin pages.
* | | | | | Merge remote-tracking branch 'origin/cernvcs_hide_passwrd'Valery Sizov2015-10-145-3/+53
|\ \ \ \ \ \ | |_|/ / / / |/| | | | |
| * | | | | Merge branch 'feature/api_hide_service_password' of gitlab.com:cernvcs/gitlab-cecernvcs_hide_passwrdValery Sizov2015-10-145-3/+53
| |\ \ \ \ \ | | |_|_|_|/ | |/| | | |