summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | | | | | | updated attribute cleaner to use allowed keyword and reject attributesJames Lopez2016-09-271-3/+3
| | | | | | | | | |
| | * | | | | | | | Prevent claiming associated model IDs via import and added relevant specsJames Lopez2016-09-273-5/+25
| | | |_|_|_|_|/ / | | |/| | | | | |
* | | | | | | | | Merge commit 'dev/security' into 'master'Rémy Coutable2016-10-068-8/+22
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
| * | | | | | | | fix export project file permissions issueJames Lopez2016-09-307-7/+18
| | | | | | | | |
| * | | | | | | | Merge branch '22435-no-api-state-change-via-rails-session' into 'security' Douwe Maan2016-09-281-1/+4
| |\ \ \ \ \ \ \ \ | | |_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | API: disable rails session auth for non-GET/HEAD requests Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/22435 See merge request !1999
| | * | | | | | | API: disable rails session auth for non-GET/HEAD requestsNick Thomas2016-09-231-1/+4
| | | | | | | | |
* | | | | | | | | Merge branch 'fix_group_links_404' into 'master' Fatih Acet2016-10-051-0/+3
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix group links 404 ### What does this MR do? This MR should fix the 404 page, when creating a new group links without selecting any group from the group dropdown list. ### What are the relevant issue numbers? Closes #20766 See merge request !6155
| * | | | | | | | fix group links 404barthc2016-10-051-0/+3
| | |_|_|_|/ / / | |/| | | | | |
* | | | | | | | Merge branch 'kradydal/gitlab-ce-20989-disable-all-for-non-project-members'Rémy Coutable2016-10-051-5/+9
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | See !6474.
| * | | | | | | Fix test, add author attribute to all testsKatarzyna Kobierska2016-10-031-2/+2
| | | | | | | |
| * | | | | | | Prevent rendering the link when the author has no accessKatarzyna Kobierska2016-10-031-5/+9
| | | | | | | |
* | | | | | | | Merge branch 'test-improve-gitlab-identifier' into 'master' Rémy Coutable2016-10-051-8/+50
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor Gitlab::Identifier ## What does this MR do? This refactors `Gitlab::Identifier` so that it: 1. Has tests 2. Caches output in an instance variable to reduce queries 3. Uses only a single query to find a user by an SSH key, instead of 2 ## Why was this MR needed? This code was untested and would execute more SQL queries than needed. See merge request !6680
| * | | | | | | | Refactor Gitlab::IdentifierYorick Peterse2016-10-051-8/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This refactors Gitlab::Identifier so it uses fewer queries and is actually tested. Queries are reduced by caching the output as well as using 1 query (instead of 2) to find a user using an SSH key.
* | | | | | | | | Merge branch 'update-runner-information' into 'master' Rémy Coutable2016-10-052-16/+19
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update runner version only when updating contacted_at ## What does this MR do? Improves how we update runners table, especially the version. This is another round of improvements to reduce number of `ci_runners` updates. I did make `contacted_at` to be updated more often (on average every 15 minutes). We will also update version information in one go to solve: https://gitlab.com/gitlab-org/gitlab-ce/issues/22206 Improves: https://gitlab.com/gitlab-org/gitlab-ce/issues/22590 Solves: https://gitlab.com/gitlab-org/gitlab-ce/issues/22206 See merge request !6537
| * | | | | | | | Extract method that checks if ci runner needs updateGrzegorz Bizon2016-10-031-4/+11
| | | | | | | | |
| * | | | | | | | Update runner version only when updating contacted_atKamil Trzcinski2016-10-032-14/+10
| | |/ / / / / / | |/| | | | | |
* | | | | | | | Merge branch 'fix/22225' into 'master' Sean McGivern2016-10-042-13/+25
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skip wiki creation when GitHub project has wiki enabled ## What does this MR do? When importing a repository from if the repository has wiki, we should not create the default wiki. Otherwise the GitHub importer will fail because the wiki repository already exist. This bug was introduced here https://gitlab.com/gitlab-org/gitlab-ce/commit/892dea67717c0efbd6a28f7639f34535ec0a8747 ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? GitLab fails to import GitHub Wiki. ## Screenshots (if relevant) ## Does this MR meet the acceptance criteria? - [X] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [X] Added for this feature/bug - [ ] All builds are passing - [X] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [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) ## What are the relevant issue numbers? Fixes #22225 See merge request !6665
| * | | | | | | Skip wiki creation when GitHub project has wiki enabledDouglas Barbosa Alexandre2016-10-042-13/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the GitHub project repository has wiki, we should not create the default wiki. Otherwise the GitHub importer will fail because the wiki repository already exist. This bug was introduced here https://gitlab.com/gitlab-org/gitlab-ce/commit/892dea67717c0efbd6a28f763 9f34535ec0a8747
* | | | | | | | Removed puts code :see_no_evil:code-blocks-vue-prePhil Hughes2016-10-041-1/+0
| | | | | | | |
* | | | | | | | Adds v-pre to code blocks in commentsPhil Hughes2016-10-042-2/+3
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | Closes #22911
* | | | | | | Merge branch 'rc-improve-members-destroy-service' into 'master' Robert Speicher2016-10-042-4/+3
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve `Members::DestroyService` Part of #21979. See merge request !6267
| * | | | | | Remove useless code now that Member#add_user handles itrc-improve-members-destroy-serviceRémy Coutable2016-10-031-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
| * | | | | | Fix a few things after the initial improvment to Members::DestroyServiceRémy Coutable2016-10-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
| * | | | | | Improve Members::DestroyServiceRémy Coutable2016-10-032-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | | | | GrapeDSL for Namespace endpointzj-grape-sessionsZ.J. van de Weg2016-10-041-12/+10
|/ / / / / /
* | | | | | Merge branch 'aiionx_sidekiq_log_patch' into 'master' Rémy Coutable2016-10-031-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Log sidekiq arguments as json Logging the sidekiq job arguments as a ruby literal structure is akward. Specially when parsing the logs. JSON is a standar format. See merge request !3735
| * | | | | | aiionx_sidekiq_log_patchDavid2016-04-151-1/+1
| | | | | | |
* | | | | | | Merge branch '22466-task-list-fork' into 'master' Rémy Coutable2016-10-031-22/+0
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve "Task List Checkbox Alignment" ## What does this MR do? Replace the unmaintained `task_list` gem with the `deckar01-task_list` fork ## Are there points in the code the reviewer needs to double check? - I had to pin some dependencies in the fork to support `ruby < 2.2`, which added new version restrictions for 2 existing modules. - I triggered a build after I removed the patch to show the test passed with the new gem, then I removed the test, because this behavior is tested in the gem's repo now. ## Why was this MR needed? - The `task_list` patch was added with a comment that said it should be removed when merged upstream, but the repo got archived, so an upstream patch requires a fork. - #22470 can't be patched without warnings due to the way `task_list` uses Ruby constants. - There are additional outstanding `task_list` bugs that can be fixed once we switch to a fork. ## What are the relevant issue numbers? - #22466 - #22470 - !6487 See merge request !6625
| * | | | | | | Replace talk_list patch with a patched forkJared Deckard2016-09-301-22/+0
| | | | | | | |
* | | | | | | | Merge branch 'zj-grape-award-emoji' into 'master' Robert Speicher2016-10-031-33/+31
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrapeDSL for Award Emoji endpoints Cherry-picked from !6330 See merge request !6629
| * | | | | | | | GrapeDSL for Award Emoji endpointszj-grape-award-emojiZ.J. van de Weg2016-10-031-33/+31
| | |_|/ / / / / | |/| | | | | |
* | | | | | | | Merge branch 'zj-grape-keys' into 'master' Rémy Coutable2016-10-031-4/+3
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrapeDSL for Keys endpoint No changelog item as it doesn't change behaviour Cherry-picket from !6330 See merge request !6631
| * | | | | | | GrapeDSL for Keys endpointzj-grape-keysZ.J. van de Weg2016-10-011-4/+3
| |/ / / / / /
* | | | | | | Merge branch ↵Robert Speicher2016-10-022-15/+6
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '21983-member-add_user-doesn-t-detect-existing-members-that-have-requested-access' into 'master' Resolve "`Member.add_user`doesn't detect existing members that have requested access" ## What does this MR do? This merge request handle the case when an access requester is added to a group or project (via the members page or the API). In `Member.add_user`, if an access requester already exists, we simply accept their request (and set the `created_by`, `access_level` and `expires_at` attributes if given). ## Are there points in the code the reviewer needs to double check? I've taken the opportunity to cleanup the whole `{Group,Project}Member.add_user*` methods since it was quite a mess. ## What are the relevant issue numbers? Closes #21983 See merge request !6393
| * | | | | | Allow Member.add_user to handle access requestersRémy Coutable2016-09-282-15/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes include: - Ensure Member.add_user is not called directly when not necessary - New GroupMember.add_users_to_group to have the same abstraction level as for Project - Refactor Member.add_user to take a source instead of an array of members - Fix Rubocop offenses - Always use Project#add_user instead of project.team.add_user - Factorize users addition as members in Member.add_users_to_source - Make access_level a keyword argument in GroupMember.add_users_to_group and ProjectMember.add_users_to_projects - Destroy any requester before adding them as a member - Improve the way we handle access requesters in Member.add_user Instead of removing the requester and creating a new member, we now simply accepts their access request. This way, they will receive a "access request granted" email. - Fix error that was previously silently ignored - Stop raising when access level is invalid in Member, let Rails validation do their work Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | | | | Merge branch '21744-fix-missing-values-in-linter' into 'master' Rémy Coutable2016-09-301-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add missing values to linter (`only`, `except`) and add new one `Environment` Closes #21744 See merge request !6276
| * | | | | | | Expose jobs to viewKatarzyna Kobierska2016-09-301-3/+1
| | | | | | | |
| * | | | | | | Add missing values to linterKatarzyna Kobierska2016-09-301-0/+2
| | | | | | | |
* | | | | | | | Merge branch 'initialize-redis' into 'master' Yorick Peterse2016-09-301-18/+6
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize Redis pool in single-threaded context See merge request !6613
| * | | | | | | | Initialize Redis pool in single-threaded contextJacob Vosmaer2016-09-301-18/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This side-steps the need for mutexes and whatnot.
* | | | | | | | | Merge branch 'replace-alias_method_chain' into 'master' Rémy Coutable2016-09-301-5/+7
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the "soon to be deprecated" `alias_method_chain` in favor of `Module#prepend`. ## Are there points in the code the reviewer needs to double check? Double check whether the behavior of `attr_encrypted_no_db_connection` is still the desired one. ## Why was this MR needed? The `alias_method_chain` becomes deprecated in Rails 5 in favor of the `Module#prepend` introduced in Ruby 2.0. This MR prevents future deprecated warnings in light of a possible Rails version bump. Closes #22302 See merge request !6570
| * | | | | | | | | Use `Module#prepend` instead of `alias_method_chain`Andre Guedes2016-09-301-5/+7
| | |/ / / / / / / | |/| | | | | | |
* | | | | | | | | Merge branch '15356-filters-should-change-issue-counts' into 'master' Robert Speicher2016-09-301-2/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Take filters in account in issuable counters ## What does this MR do? This merge request ensure we display issuable counters that take in account all the selected filters, solving #15356. ## Are there points in the code the reviewer needs to double check? There was an issue (#22414) in the original implementation (!4960) when more than one label was selected because calling `#count` when the ActiveRecordRelation contains a `.group` returns an OrderedHash. This merge request relies on [how Kaminari handle this case](https://github.com/amatsuda/kaminari/blob/master/lib/kaminari/models/active_record_relation_methods.rb#L24-L30). A few things to note: - The `COUNT` query issued by Kaminari for the pagination is now cached because it's already run by `ApplicationHelper#state_filters_text_for`, so in the end we issue one less SQL query than before; - In the case when more than one label are selected, the `COUNT` queries return an OrderedHash in the form `{ ISSUABLE_ID => COUNT_OF_SELECTED_FILTERS }` on which `#count` is called: this drawback is already in place (for instance when loading https://gitlab.com/gitlab-org/gitlab-ce/issues?scope=all&state=all&utf8=%E2%9C%93&label_name%5B%5D=bug&label_name%5B%5D=regression) since that's how Kaminari solves this, **the difference is that now we do that two more times for the two states that are not currently selected**. I will let the ~Performance team decide if that's something acceptable or not, otherwise we will have to find another solution... - The queries that count the # of issuable are a bit more complex than before, from: ``` (0.6ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 AND ("issues"."state" IN ('opened','reopened')) [["project_id", 2]] (0.2ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 AND ("issues"."state" IN ('closed')) [["project_id", 2]] (0.2ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 [["project_id", 2]] ``` to ``` (0.7ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND ("issues"."state" IN ('opened','reopened')) AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] (0.5ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND ("issues"."state" IN ('closed')) AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] (0.5ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] ``` - We could cache the counters for a few minutes? The key could be `PROJECT_ID-ISSUABLE_TYPE-PARAMS`. A few possible arguments in favor of "it's an acceptable solution": - most of the time people filter with a single label => no performance problem here - when filtering with more than one label, usually the result set is reduced, limiting the performance issues ## What are the relevant issue numbers? Closes #15356 See merge request !6496
| * | | | | | | | | Small improvements thanks to Robert's feedbackRémy Coutable2016-09-301-2/+1
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | | | | | | Merge branch 'koding-setting-api' into 'master' Robert Speicher2016-09-301-0/+2
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose the Koding application settings in the API ## Why was this MR needed? When saving the GitLab application secrets in Koding, and authorising your admin user to have access to the UI, we want to let Koding enable the integration, and populate the url in GitLab for the user. ## What are the relevant issue numbers? Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/22705 See merge request !6555
| * | | | | | | | Expose the Koding application settings in the APIkoding-setting-apiDJ Mountney2016-09-291-0/+2
| | |_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | This will allow the Koding app to enable the integration itself once is has authorized an admin user using the application secrets.
* | | | | | | | Merge branch 'rc-new-access-requests-finder' into 'master' Douwe Maan2016-09-301-2/+2
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New `AccessRequestsFinder` Part of #21979. ## Does this MR meet the acceptance criteria? - [x] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [ ] 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 !6268
| * | | | | | | | New AccessRequestsFinderRémy Coutable2016-09-281-2/+2
| | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | | | | | Fix race condition that can be triggered if the token expires right after we ↵lfs-token-race-condition-fixPatricio Cano2016-09-291-7/+2
| |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | retrieve it, but before we can set the new expiry time.
* | | | | | | Merge branch 'issue_22382' into 'master' Rémy Coutable2016-09-292-6/+7
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose project share expiration_date field on API closes #22382 See merge request !6484