- 15 Jun, 2016 40 commits
-
-
Phil Hughes authored
Fixed issue when nav wasn't present
-
Phil Hughes authored
-
Phil Hughes authored
Closes #18542
-
Douwe Maan authored
Eager load project relations in IssueParser ## What does this MR do? This changes the ReferenceParser class to eager load various associations. This in turn results in the permissions checking code (e.g. the `Ability` model) to _not_ run dozens if not hundreds of extra SQL queries depending on the amount of references involved (in a single document). ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? In !4410 it was revealed a _lot_ of a queries came from the `Ability` model and the code it would call. In many cases this was because the code would simply get a project, then get the owners; or get a group, then get some association of that. Eager loading these associations is a fairly simple solution and greatly cuts down the number of queries. ## What are the relevant issue numbers? None. ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] ~~[Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~ - [x] ~~API support added~~ - [ ] Tests - [x] ~~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) - [ ] 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 !4675
-
Douwe Maan authored
-
Jacob Schatz authored
Remove div between ul and li ## What does this MR do? Adds `container_class`to `ul` instead of `div` for valid HTML ## What are the relevant issue numbers? https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4592#note_12420843 See merge request !4633
-
Douwe Maan authored
Award Emoji can't be awarded on system notes backend See merge request !4668
-
Rémy Coutable authored
Add environments and deployments This MR is a continuation of https://gitlab.com/gitlab-org/gitlab-ce/issues/17009. The current implementation is as follow: 1. We have two new tables: `environments` and `deployments`. 2. We have a new tab: `Environments` under `Pipelines` where you can see all you environments and add a new one. 3. We add a new option to `.gitlab-ci.yml` to track where we should create a deployment for environment. 4. If environment in `.gitlab-ci.yml` is specified it will create a deployment. **If environment does not exist it will be created.** (this got changed) 5. The deployment is always successful and shows the time of the action, in that case a build that presumably should do deployment. In the future we could extend deployment with statuses: success, failure. We could extend deployments with information that this is partial or full deployment. 6. User have to create environments that he will track first. 7. User can remove environments. 8. User can retry/rollback past deployment (in that case we retry past build). The new build when succeeds it will create a new deployment. 9. Currently environment have only one parameter: `name`. In the future it should have: `variables`, `credentials` and possibly `runners` and maybe other resources. 10. Currently deployment have this parameters: `sha`, `ref`, `deployable (in this case a build)`, `user (who triggered a deployment)`, `created_at`. The `.gitlab-ci.yml`: ``` deploy to production: stage: deploy script: dpl travis... environment: production ``` What needs to be done: - [x] Write initial implementation - [x] Improve implementation (@ayufan) - [x] Write tests (@ayufan) - [x] Improve UX of the forms (cc @markpundsack) - reviewed by @markpundsack - [x] Improve implementation of the views (cc @jschatz1) - done by @iamphill - [x] Write .gitlab-ci.yml documentation for `environments` - done by @ayufan - [ ] Write user documentation (@ayufan and @markpundsack) See merge request !4605
-
Yorick Peterse authored
By eager loading these associations we can greatly cut down the number of SQL queries executed when processing documents with lots of references, especially in cases where there are references belonging to the same project. Since these associations are so specific to the reference parsing process and the permissions checking process that follows it I opted to include them directly in IssueParser instead of using something like a scope. Once we have a need for it we can move this code to a scope or method.
-
Kamil Trzcinski authored
-
Z.J. van de Weg authored
-
Douwe Maan authored
Seed Award Emoji while seeding the database ## What does this MR do? Lets `rake dev:setup` create award emoji on _some_ awardables. Seemed overkill to give all that privilege. See merge request !4555
-
Kamil Trzcinski authored
-
Kamil Trzcinski authored
-
Jacob Schatz authored
Fix the logo in header not being an anchor link. ## What does this MR do? Adds an actual link to the Tanuki in the header instead of a `Turbolinks.visit()`. ## Are there points in the code the reviewer needs to double check? Do we care that this reverts the Safari issue fixed in !2690? I feel bad, but it's hacky and there's not a great way to fix it here. ## Why was this MR needed? You couldn't open the home page in a new tab before, it was very annoying. ## What are the relevant issue numbers? Fixes #18604 cc: @rspeicher See merge request !4661
-
Jacob Schatz authored
Fixed issue with move dropdown not being searchable ## What does this MR do? Adds the ability to search the project move dropdown. ## What are the relevant issue numbers? Closes #18634 ## Screenshots (if relevant) ![search](/uploads/f10a9a16b608308c1b3c66f186f57f80/search.gif) See merge request !4666
-
Kamil Trzcinski authored
This is done to make belongs_to with required to properly validate association. Otherwise `ActiveRecord::StatementInvalid` is raised.
-
Kamil Trzcinski authored
-
Phil Hughes authored
-
Kamil Trzcinski authored
-
Kamil Trzcinski authored
-
Douwe Maan authored
Don't allow U2F set up unless an authenticator app is set up Closes #17333 # TODO - [ ] #17333 Authenticator should be set up before enabling U2F - [x] Implementation - [x] Fix/add tests - [x] Refactor - [x] Wait for [build](https://gitlab.com/gitlab-org/gitlab-ce/commit/964c98a3c427cac6e3de88ddc74a9f172ee9742d/builds) to pass - [x] Assign to endboss for review - [x] Address @DouweM's comments - [x] No need for `javascript:void(0)` - [x] Add screenshots - [ ] Wait for merge # Screenshots ![Screen_Shot_2016-06-15_at_8.18.03_AM](/uploads/26531fa7f6e5d7617fd11d1779021b4f/Screen_Shot_2016-06-15_at_8.18.03_AM.png) ![Screen_Shot_2016-06-15_at_8.18.37_AM](/uploads/ceaae97a987a15d3e04dd76aa8a944bd/Screen_Shot_2016-06-15_at_8.18.37_AM.png) ![Screen_Shot_2016-06-15_at_8.18.47_AM](/uploads/394224d5fcff759d5acc3bf39a138530/Screen_Shot_2016-06-15_at_8.18.47_AM.png) See merge request !4585
-
Kamil Trzcinski authored
-
Z.J. van de Weg authored
-
Kamil Trzcinski authored
-
Kamil Trzcinski authored
-
Douwe Maan authored
Resolve "Track the number of new Redis connections per transaction" ## What does this MR do? Add a new metric counter, `new_redis_connections`, that contains the number of calls to `Redis::Client#connect` in the current transaction. ## Are there points in the code the reviewer needs to double check? Not sure. I tested this in kind of a brute-force way: 1. Add a debugger in the monkey-patched `connect` method. 2. With metrics enabled, start the app and load a page. 3. The first Redis connection is created by `Rack::Attack` and isn't in a transaction, but still works fine. 4. The second Redis connection is within a transaction (the page load), and increments the counter. 5. If I reload the page, neither debugger is hit. 6. If I use a Redis client and do `CLIENT KILL` on my two existing clients, then reload the page, I get 3 and 4 again. 7. If I disable metrics collection, the debugger never gets hit. ## Why was this MR needed? We may have a Redis connection leak somewhere, so adding metrics will let us track this. ## What are the relevant issue numbers? Closes #18451. ## Screenshots (if relevant) Hahaha nope, not relevant. ## Does this MR meet the acceptance criteria? - [ ] [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 - [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [ ] Branch has no merge conflicts with `master` (if you do - rebase it please) - [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) cc @yorickpeterse See merge request !4649
-
Z.J. van de Weg authored
-
Z.J. van de Weg authored
-
Z.J. van de Weg authored
-
Achilleas Pipinellis authored
Add docs for assigning labels/milestone when moving issue Extends https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3934 See merge request !4069
-
Grzegorz Bizon authored
[ci skip]
-
Achilleas Pipinellis authored
Document CI_BUILD_TOKEN ## What does this MR do? Adds `CI_BUILD_TOKEN` to CI variables documentation. See merge request !4664
-
Yorick Peterse authored
Include user relationship when retrieving award_emoji See merge request !4647
-
Dmitriy Zaporozhets authored
-
Phil Hughes authored
Closes #18634
-
Paco Guzman authored
Avoiding N+1 when showing grouped awards and when calculating participants for awardable entities
-
Mark Pundsack authored
-
Stan Hu authored
Don't fail builds for projects that are deleted when they are stuck ## What does this MR do? Solves when dropping stuck connection. ``` Dropping stuck pending build 1545510 for runner NoMethodError: undefined method `origin_merge_requests' for nil:NilClass from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/base_service.rb:50:in `merge_request_from' from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/base_service.rb:57:in `each_merge_request' from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/add_todo_when_build_fails_service.rb:5:in `execute' from /opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/instrumentation.rb:164:in `execute' from /opt/gitlab/embedded/service/gitlab-rails/app/models/commit_status.rb:51:in `block (2 levels) in <class:CommitStatus>' from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/state_machines-0.4.0/lib/state_machines/eval_helpers.rb:79:in `call' ... ``` This happens, because that `default_scope` of `Projects` filters returns the projects that are not deleted, where `Ci::Build` doesn't take into account. See merge request !4609
-
Timothy Andrew authored
- We added a `current_user.two_factor_via_otp?` check to the view. When rendering the view via the teaspoon fixture, `current_user` is `nil`.
-