Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-07-29Enforce "No One Can Push" during git operations.Timothy Andrew
1. The crux of this change is in `UserAccess`, which looks through all the access levels, asking each if the user has access to push/merge for the current project. 2. Update the `protected_branches` factory to create access levels as necessary. 3. Fix and augment `user_access` and `git_access` specs.
2016-07-29Add "No One Can Push" to the protected branches UI.Timothy Andrew
1. Move to dropdowns instead of checkboxes. One each for "Allowed to Push" and "Allowed to Merge" 2. Refactor the `ProtectedBranches` coffeescript class into `ProtectedBranchesAccessSelect`. 3. Modify the backend to accept the new parameters.
2016-07-29Use the `{Push,Merge}AccessLevel` models in the UI.Timothy Andrew
1. Improve error handling while creating protected branches. 2. Modify coffeescript code so that the "Developers can *" checkboxes send a '1' or '0' even when using AJAX. This lets us keep the backend code simpler. 3. Use services for both creating and updating protected branches. Destruction is taken care of with `dependent: :destroy`
2016-07-29Add models for the protected branch access levels.Timothy Andrew
- And hook up their associations.
2016-07-29Merge branch 'cache-commit-author-lookup' into 'master' Yorick Peterse
Cache the commit author in RequestStore to avoid extra lookups in PostReceive See merge request !5537
2016-07-29Merge branch ↵Yorick Peterse
'17073-tagscontroller-index-is-terrible-response-time-goes-up-to-5-seconds' into 'master' Update to gitlab_git 10.4.1 and take advantage of preserved Ref objects See merge request !5536
2016-07-29Merge branch 'fix/use-fewer-queries-for-mr-notes' into 'master' Douwe Maan
Reduce number of queries made for merge_requests/:id/diffs ## What does this MR do? It reduces the number of DB queries made while processing and rendering MR notes. ## Are there points in the code the reviewer needs to double check? N/A ## Why was this MR needed? For `https://staging.gitlab.com/gitlab-org/gitlab-ce/merge_requests/3142/diffs.json`, for each note we make number of DB queries, almost all of them are handled by the AR caching layer, but they seem to add up a few seconds. Testing on staging, calling `merge_requests/3142/diffs.json` was reduced to ~5.5 seconds from ~8 seconds. ## What are the relevant issue numbers? N/A ## Screenshots (if relevant) N/A ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] ~~[Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~ - [ ] ~~API support added~~ - ~~Tests~~ - [ ] ~~Added for this feature/bug~~ - [ ] ~~All builds are passing~~ - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5551
2016-07-28Merge branch 'log-project-deletion' into 'master' Stan Hu
Add a log message when a project is scheduled for destruction for debugging We have a lot of projects that are in `pending_delete` state. It's not clear whether they were ever scheduled for destruction, or whether Sidekiq just dropped the job due to `MemoryKiller` or some other reason. Also this will provide a record of which user destroys a project. #20365 See merge request !5540
2016-07-28Merge branch 'new-issue-by-email' into 'master' Douwe Maan
Implement #3243 New Issue by email So we extend Gitlab::Email::Receiver for this new behaviour, however we might want to split it into another class for better testing it. Another issue is that, currently it's using this to parse project identifier: Gitlab::IncomingEmail.key_from_address Which is using: Gitlab.config.incoming_email.address for the receiver name. This is probably `reply` because it's used for replying to a specific issue. We might want to introduce another config for this, or just use `reply` instead of `incoming`. I'll prefer to introduce a new config for this, or just change `reply` to `incoming` because it would make sense for replying to there, too. The email template used in tests were copied and modified from: `emails/valid_reply.eml` which I hope is ok. /cc @DouweM #3243 See merge request !3363
2016-07-28Add a log message when a project is scheduled for destruction for debuggingStan Hu
2016-07-28Update to gitlab_git 10.4.1 and take advantage of preserved Ref objectsAlejandro Rodríguez
2016-07-28Merge branch ↵Rémy Coutable
'20308-fix-title-that-is-show-in-the-dropdown-toggle-button-on-projects-branches' into 'master' Fix the title of the toggle dropdown button ## What does this MR do? Fix the dropdown-button toggle displaying the correctly title. ## Are there points in the code the reviewer needs to double check? See if the title is displaying correctly and if the code is acceptable. ## Why was this MR needed? When you choose `Last updated` it should display the title `Last updated` instead of `Recently updated`. This fix makes this correctly displays the title. ## What are the relevant issue numbers? Closes #20308. ## Screenshots (if relevant) ![filter-gitlab-ce](/uploads/52838679d134d57c6ff6120260806fda/filter-gitlab-ce.gif) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5515
2016-07-28Fix the title of the toggle dropdown buttonHerminio Torres
Before when you choose the way of `sort` instead it display the title correctly it was just apply the humanize helper in sort value. E.g. When you choose `Last updated` it should display the title `Last updated` instead of `Recently updated`. This fix makes this correctly displays the title. Change the implementation of the `link_to` `filter_branches_path` - Change the value of the `params[:sort]` in `link_to`. E.g. instead of using `'recently_updated'` is now using `sort_value_recently_updated`. - Change the values of the case in the `branches_sorted_by` method for the values it receives in the `params[:sort]` that are: `nil`, `'name'`, `'updated_desc'`, `'updated_asc'`.
2016-07-28Reduce number of queries made for merge_requests/:id/diffsAhmad Sherif
2016-07-28Merge remote-tracking branch 'upstream/master' into new-issue-by-emailLin Jen-Shin
* upstream/master: (45 commits) Replace reject_blocked with reject_blocked! in callbacks. Fix Project#to_param to keep invalid project suitable for use in URLs Update CHANGELOG Add feature specs for edit project settings Fix renaming repository when name contains invalid chars under settings Change requests_profiles resource constraint to catch virtually any file Allow skipping users in autocomplete Fix typo in CHANGELOG Update CHANGELOG Respective cache is now expired when creating a new branch Update CHANGELOG Unify HTML format in static error pages Make error pages responsive design Move color-logic into HipchatService#HipchatService Depened on exact version of SimpleCov when patched Refactor spam validation to a concern that can be easily reused and improve legibility in `SpamCheckService` Refactor `SpamCheckService` to make it cleaner and clearer. Submit all issues on public projects to Akismet if enabled. Submit new issues created via the WebUI by non project members to Akismet for spam check. Upgrade Bullet from 5.0.0 to 5.2.0. ...
2016-07-28Add specs for caching commit authorStan Hu
2016-07-28Cache the commit author in RequestStore to avoid extra lookups in PostReceiveStan Hu
In a PostReceive task with 697 commits (8.9 RC1 -> RC8), looking up the commit author takes about 10% of the time. Caching this information in RequestStore saves a few seconds from the overall processing time. Improves #18663
2016-07-27Merge branch 'akismet-ui-check' into 'master' Douwe Maan
Submit new issues created via the WebUI or API to Akismet for spam check on public projects. ## What does this MR do? Submit new issues created via the WebUI by non project members to Akismet for spam check. ## Why was this MR needed? Support for Akismet was added only to the API with !2266. This MR builds on that functionality to also check issues submitted via the WebUI for spam. ## What are the relevant issue numbers? Related to: - #5573 - #5932 - gitlab-com/infrastructure#14 - gitlab-com/support#61 - !2266 cc @stanhu @MrChrisW See merge request !5333
2016-07-27Fix Project#to_param to keep invalid project suitable for use in URLsDouglas Barbosa Alexandre
2016-07-27Merge branch '5571-hipchat-notifications-missing-colors' into 'master' Robert Speicher
Resolve "HipChat notifications missing colors" _Originally opened at !2322 by @eisnerd._ - - - ## What does this MR do? This MR restores the colors mentioned in #5571 by overriding the color setting with green/red just for build events. ## What are the relevant issue numbers? Closes #5571. See merge request !5498
2016-07-27Respective cache is now expired when creating a new branchtiagonbotelho
Project and branch cache is expired when project is still empty or new branch is created. develops tests accordingly Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-07-27Merge remote-tracking branch 'upstream/master' into new-issue-by-emailLin Jen-Shin
* upstream/master: (38 commits) Remove useless new route Update gitlab-shell version to 3.2.1 in the 8.9->8.10 update guide Fix typo in Elixir CI template Add a spec for access_for_user_ids Fix typo in comment Rubocop offenses Optimize the invited group link access level check Incorporate review comments Optimize maximum user access level lookup in loading of notes Fix missing schema update for 20160722221922 Whitelist 'Simplified BSD' license Fix a bug where forking a project from a repository storage to another would fail Remove inline scripts from import pages. Make branches sortable without push permission (!5462) Profile requests when a header is passed Upgrade database_cleaner from 1.4.1 to 1.5.3. Show release notes in tag list Fix expand all diffs button in compare view Add route for Import::GithubController#new Update CHANGELOG ...
2016-07-27Move color-logic into HipchatService#HipchatServiceRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-07-27Refactor spam validation to a concern that can be easily reused and improve ↵Patricio Cano
legibility in `SpamCheckService`
2016-07-27Fix typo in commentStan Hu
2016-07-27Optimize the invited group link access level checkStan Hu
2016-07-27Incorporate review commentsStan Hu
2016-07-27Optimize maximum user access level lookup in loading of notesStan Hu
NotesHelper#note_editable? and ProjectTeam#human_max_access currently take about 16% of the load time of an issue page. This MR preloads the maximum access level of users for all notes in issues and merge requests with several queries instead of one per user and caches the result in RequestStore.
2016-07-27Fix a bug where forking a project from a repository storage to another would ↵Alejandro Rodríguez
fail
2016-07-26Little refactor, add specs, and a CHANGELOG entryRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-07-26HipChat notification color overridden by build statusDavid Eisner
2016-07-26Rescue Rugged::OSError (lock exists) when creating references.Paco Guzman
2016-07-26Ensure relative paths for video are rewritten as we do for imagesRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-07-26Merge remote-tracking branch 'upstream/master' into new-issue-by-emailLin Jen-Shin
* upstream/master: (620 commits) Added '*.js.es6 gitlab-language=javascript' to .gitattributes Fix CI status icon link underline Update CHANGELOG after 8.10.1 Add CHANGELOG Add es6 gem Instrument Nokogiri parsing methods Fix backup restore Use project ID in repository cache to prevent stale data from persisting across projects Add iid to MR API response `WikiPage` should have a slug even when not persisted. ES6ify all the things! Make fork counter always clickable (!5463) Revert "Merge branch '17073-tagscontroller-index-is-terrible-response-time-goes-up-to-5-…" Fix CHANGELOG Add spec for dashes in paths Fix Error 500 when creating Wiki pages with hyphens or spaces Add links to the real markdown.md file for all GFM examples Remove magic comments from Ruby files (!5456) Ignore invalid trusted proxies in X-Forwarded-For header remove search_id for label dropdown filter ...
2016-07-25Merge branch 'use-project-id-in-repo-cache' into 'master' Yorick Peterse
Use project ID in repository cache to prevent stale data from persisting across projects See merge request !5460
2016-07-25Use project ID in repository cache to prevent stale data from persisting ↵Stan Hu
across projects We have a number of bugs caused by cache keys not being flushed properly during deletion of a project. Add the project ID to ensure this never happens. Closes #20027
2016-07-25Merge branch 'filter-branch-by-name' into 'master' Douwe Maan
Users can filter branches by name on project branches page This MR aims to solve #18674 by adding the possibility to filter project branches by name ![Screen_Shot_2016-07-07_at_17.21.25](/uploads/b674765d2b1cb8a121c2101715a4568b/Screen_Shot_2016-07-07_at_17.21.25.png) See merge request !5144
2016-07-25Merge branch 'fix-wiki-error-500' into 'master' Rémy Coutable
Fix Error 500 when creating Wiki pages with hyphens or spaces - Closes gitlab-com/support-forum#874 - Closes #20209 See merge request !5444
2016-07-25`WikiPage` should have a slug even when not persisted.Timothy Andrew
1. So we can build the markdown preview URL for it. 2. We can't skip the slug in this case, because the slug is used to construct relative markdown URLs. 3. Add rspec feature tests to cover creating wiki pages with spaces/hyphens in the name. 4. Add rspec feature tests for markdown preview URL rewriting, which was only covered by unit tests up to this point.
2016-07-24Revert "Merge branch ↵Alejandro Rodríguez
'17073-tagscontroller-index-is-terrible-response-time-goes-up-to-5-…" This reverts merge request !5375
2016-07-24Merge branch 'nullify-note-type' into 'master' Stan Hu
Fix bug where replies to commit notes displayed in the MR discussion tab wouldn'… Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/20157 See merge request !5446
2016-07-23Fix bug where replies to commit notes displayed in the MR discussion tab ↵Douwe Maan
wouldn't show up on the commit page
2016-07-23Improve project rename log messages for better debuggingStan Hu
Helping to diagnose #20178
2016-07-22Merge branch 'master' into filter-branch-by-nametiagonbotelho
2016-07-22Merge branch 'fix/load-project-invited-groups-and-members-eagerly' into ↵Douwe Maan
'master' Load project invited groups and members eagerly in ProjectTeam#fetch_members ## What does this MR do? Load project invited groups and members eagerly in `ProjectTeam#fetch_members`, reducing number of queries to DB. ## Are there points in the code the reviewer needs to double check? N/A ## Why was this MR needed? `ProjectTeam#fetch_members` is part of the code path of `Participable#raw_participants`, so it should improve its performance a bit. ## What are the relevant issue numbers? #19985 ## Screenshots (if relevant) N/A ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - ~~[ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~ - ~~[ ] API support added~~ - ~~Tests~~ - ~~[ ] Added for this feature/bug~~ - ~~[ ] All builds are passing~~ - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5436
2016-07-22Load project invited groups and members eagerly in ProjectTeam#fetch_membersAhmad Sherif
2016-07-22Gracefully handle case when keep-around references are corrupted or exist ↵Stan Hu
already We were seeing a number of error messages when attempting to create a keep-around ref: 1. Failed to create locked file `refs/keep-around/XYZ`: File exists 2. Failed to write reference `refs/keep-around/XYZ`: a reference with that name already exists. I'm not sure how these happen, but I suspect when multiple workers attempt to write the same file we may have an issue. The force parameter should help ensure the file gets created, as well as the rescues to prevent 500 Errors. Rugged/libgit2 unfortunately do not allow you to delete or re-create a reference that has been corrupted, even with the force parameter. Closes #20109
2016-07-22Merge branch 'artifacts-from-ref-and-build-name-api' into 'master' Rémy Coutable
Simpler two queries than one JOIN with subquery This is a follow up from !5347 Originally it was: ``` ruby pipeline = pipelines.latest_successful_for(ref) builds.where(pipeline: pipeline).latest.with_artifacts ``` However MySQL would complain that we can't use `IN` against a subquery which has `LIMIT`. Using `INNER JOIN` would be a workaround, however, doing that is too complicated in current version of Rails. So let's just use two queries in this case. Closes #14419 See merge request !5388
2016-07-22Update to gitlab_git 10.4.1 and take advantage of preserved Ref objectsAlejandro Rodríguez
2016-07-22Merge branch 'fix-data-integrity-issue-with-repository-downloads-path' into ↵Douwe Maan
'master' Avoid data-integrity issue when cleaning up repository archive cache ## What does this MR do? Sets the default value for `repository_downloads_path` if someone has it configured incorrectly, and it points to the path where repositories are stored. It's also replace invocation of `find` with Ruby code that matches old cached files in a better, and safe way to avoid data-integrity issues. ## Why was this MR needed? The `repository_downloads_path` is used by the `RepositoryArchiveCacheWorker` to remove outdated repository archives, if it points to the wrong directory can cause some data-integrity issue. ## What are the relevant issue numbers? Closes #14222 See merge request !5285