- 14 6月, 2019 1 次提交
-
-
由 Bob Van Landuyt 提交于
This exposes `Note`s on Issues & MergeRequests using a `Types::Notes::NoteableType` in GraphQL. Exposing notes on a new type can be done by implementing the `NoteableType` interface on the type. The presented object should be a `Noteable`.
-
- 11 6月, 2019 1 次提交
-
-
由 Bob Van Landuyt 提交于
Since we're not actually loading commits in that loader, but we're loading blobs with LFS oids in batch and returning only the oids.
-
- 10 6月, 2019 1 次提交
-
-
由 Phil Hughes 提交于
-
- 05 6月, 2019 3 次提交
-
-
由 Brett Walker 提交于
-
由 Brett Walker 提交于
This helps reduce complexity for non-connections
-
由 Phil Hughes 提交于
-
- 04 6月, 2019 3 次提交
-
-
由 Alessio Caiazza 提交于
-
由 Bob Van Landuyt 提交于
Since the `GraphQL::ID_TYPE` usages should represent globally unique ids, this changes some fields for which this is not the case into strings. The `ID_TYPE` is a specialised, so this change should be backwards compatible. https://graphql-ruby.org/type_definitions/scalars.html
-
由 Bob Van Landuyt 提交于
This exposes all fields named `id` as GlobalIDs so they can be used across our entire GraphQL implementation. When the objects loaded are `ApplicationRecord`s. We'll use our existing batchloading to find them. Otherwise, we'll fall back to the default implementation of `GlobalID`: Calling the `.find` method on the class.
-
- 03 6月, 2019 1 次提交
-
-
由 Alessio Caiazza 提交于
We can query namespaces, and nested projects. Projects now exposes statistics
-
- 01 6月, 2019 1 次提交
-
-
由 Brett Walker 提交于
and allow passing of child_complexity to the 'resolver_complexity' metho
-
- 30 5月, 2019 1 次提交
-
-
由 charlieablett 提交于
- Modify GraphqlLogger to subclass JsonLogger - Replace the single-line analyser with one that can log all the GraphQL query related information in one place. - Implement analyzer behavior with spec
-
- 28 5月, 2019 1 次提交
-
-
由 Phil Hughes 提交于
Enabling GraphQL batch requests allows for multiple queries to be sent in 1 request reducing the amount of requests we send to the server. Responses come come back in the same order as the queries were provided.
-
- 22 5月, 2019 1 次提交
-
-
由 Phil Hughes 提交于
-
- 21 5月, 2019 1 次提交
-
-
由 Brett Walker 提交于
-
- 20 5月, 2019 1 次提交
-
-
由 Yoginth 提交于
-
- 07 5月, 2019 1 次提交
-
-
由 Jan Provaznik 提交于
If a field is a resolver, its complexity is automatically increased. By default we add extra points for sort and search arguments (which will be common for various resolvers). For specific resolvers we add field-specific complexity, e.g. for Issues complexity is increased if we filter issues by `labelName` (because then SQL query is more complex). We may want to tune these values in future depending on real-life results. Complexity is also dependent on the number of loaded nodes, but only if we don't search by specific ID(s). Also added complexity is limited (by default only twice more than child complexity) - the reason is that although it's more complex to process more items, the complexity increase is not linear (there is not so much difference between loading 10, 20 or 100 records from DB).
-
- 06 5月, 2019 1 次提交
-
-
由 Ken Ding 提交于
58404 - add change log 58404 - add spec 58404 - add more spec to test depth 2 58404 - fix spec 58404 - fix rubocop 58404 - refactor the code by Bob's advice 58404 - revert changes of all_graphql_fields_for 58404 - change text only 58404 - fix rspec according to gitlab's standard 58404 - revert previous spec 58404 - fix rubocop
-
- 02 5月, 2019 1 次提交
-
-
由 Jan Provaznik 提交于
Extends existing graphql's tracer with opentracing measurements. Because it also adds Tracing::Graphql class (for opentracing), it also renames Graphql::Tracing class to Graphql::GenericTracing to minimize confusion with similar class names.
-
- 29 4月, 2019 1 次提交
-
-
由 Bob Van Landuyt 提交于
This ports the changes from https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/10462/ to CE
-
- 24 4月, 2019 2 次提交
-
-
由 Brett Walker 提交于
and removing unnecessary code
-
由 Brett Walker 提交于
Add new query for Groups, with new GroupType and NamespaceType
-
- 09 4月, 2019 1 次提交
-
-
由 Brett Walker 提交于
An IntrospectionQuery required more complexity points.
-
- 05 4月, 2019 1 次提交
-
-
由 Nick Thomas 提交于
-
- 04 4月, 2019 2 次提交
-
-
由 Jan Provaznik 提交于
Extends graphql's platform tracing class to observe duration of graphql methods. In graphql 1.8.11 is added prometheus class but it's not very useful for us because it uses prometheus_exporter to export results.
-
由 Brett Walker 提交于
It makes all Types::BaseField default to a complexity of 1. Queries themselves now have limited complexity, scaled to the type of user: no user, authenticated user, or an admin user.
-
- 03 4月, 2019 2 次提交
-
-
由 Luke Duncalfe 提交于
Enables authorizations to be defined on GraphQL Types. module Types class ProjectType < BaseObject authorize :read_project end end If a field has authorizations defined on it, and the return type of the field also has authorizations defined on it. then all of the combined permissions in the authorizations will be checked and must pass. Connection fields are checked by "digging" to find the type class of the "node" field in the expected location of edges->node. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/54417
-
由 Jan Provaznik 提交于
This reverts merge request !26569
-
- 02 4月, 2019 1 次提交
-
-
由 Jan Provaznik 提交于
Extends graphql's platform tracing class to observe duration of graphql methods. In graphql 1.8.11 is added prometheus class but it's not very useful for us because it uses prometheus_exporter to export results.
-
- 21 3月, 2019 1 次提交
-
-
由 Sam Bigelow 提交于
- Show pipeline status, title, MR Status and project path - Popover attached to gitlab flavored markdown everywhere, including: + MR/Issue Title + MR/Issue description + MR/Issue comments + Rendered markdown files
-
- 05 3月, 2019 1 次提交
-
-
由 Nick Thomas 提交于
-
- 26 2月, 2019 1 次提交
-
-
由 Luke Duncalfe 提交于
Previously GraphQL field authorization happened like this: class ProjectType field :my_field, MyFieldType do authorize :permission end end This change allowed us to authorize like this instead: class ProjectType field :my_field, MyFieldType, authorize: :permission end A new initializer registers the `authorize` metadata keyword on GraphQL Schema Objects and Fields, and we can collect this data within the context of Instrumentation like this: field.metadata[:authorize] The previous functionality of authorize is still being used for mutations, as the #authorize method here is called at during the code that executes during the mutation, rather than when a field resolves. https://gitlab.com/gitlab-org/gitlab-ce/issues/57828
-
- 21 2月, 2019 1 次提交
-
-
由 Rémy Coutable 提交于
Signed-off-by: NRémy Coutable <remy@rymai.me>
-
- 18 2月, 2019 2 次提交
-
-
由 Luke Duncalfe 提交于
-
由 Luke Duncalfe 提交于
defaultBranch and ciConfigPath should only be available to users with the :download_code permission for the Project, as the respository might be private. When implementing the authorize check on these properties, it was found that our current Graphql::Authorize::Instrumentation class does not work with fields that resolve to subclasses of GraphQL::Schema::Scalar, like GraphQL::STRING_TYPE. After discussion with other Create Team members, it has been decided that because the GraphQL API is not GA, to remove these properties from ProjectType, and instead implement them as part of epic https://gitlab.com/groups/gitlab-org/-/epics/711 Issue: https://gitlab.com/gitlab-org/gitlab-ce/issues/55316
-
- 14 2月, 2019 4 次提交
-
-
由 Lin Jen-Shin 提交于
-
由 Lin Jen-Shin 提交于
-
由 Lin Jen-Shin 提交于
And add tests
-
由 Lin Jen-Shin 提交于
And fix the tests so that it won't run into circular paths.
-
- 06 2月, 2019 1 次提交
-
-
由 Luke Duncalfe 提交于
-