Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

useEngine accepts GraphQL's specifiedRules #1557

Merged
merged 6 commits into from
Oct 13, 2022

Conversation

enisdenjo
Copy link
Collaborator

@enisdenjo enisdenjo commented Oct 13, 2022

v3 doesn't ship with graphql included, meaning we cannot access the default rules. This requires a change in useEngine to accept them.

When addValidationRule from onValidate hook, the added rule should be appended to the default specified rule list instead of replacing them.

it('Should not replace default rules when adding new ones', async () => {
const teskit = createTestkit(
[
{
onValidate: ({ addValidationRule }) => {
addValidationRule(
() => ({}) // noop
);
},
},
],
schema
);
const r = await teskit.execute('{ woah }');
assertSingleExecutionValue(r);
expect(r).toMatchInlineSnapshot(`
Object {
"errors": Array [
[GraphQLError: Cannot query field "woah" on type "Query".],
],
}
`);
});

@changeset-bot
Copy link

changeset-bot bot commented Oct 13, 2022

🦋 Changeset detected

Latest commit: a37e562

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@envelop/core Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@enisdenjo enisdenjo requested review from saihaj, dotansimha and ardatan and removed request for saihaj October 13, 2022 14:59
@enisdenjo enisdenjo self-assigned this Oct 13, 2022
@enisdenjo enisdenjo requested a review from n1ru4l October 13, 2022 15:01
@github-actions
Copy link
Contributor

github-actions bot commented Oct 13, 2022

🚀 Snapshot Release (alpha)

The latest changes of this PR are available as alpha on npm (based on the declared changesets):

Package Version Info
@envelop/core 4.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/apollo-datasources 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/apollo-federation 4.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/apollo-server-errors 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/apollo-tracing 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/auth0 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/dataloader 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/depth-limit 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/disable-introspection 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/execute-subscription-event 4.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/extended-validation 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/filter-operation-type 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/fragment-arguments 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/generic-auth 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/graphql-jit 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/graphql-middleware 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/graphql-modules 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/immediate-introspection 2.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/live-query 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/newrelic 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/on-resolve 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/opentelemetry 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/operation-field-permissions 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/parser-cache 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/persisted-operations 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/preload-assets 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/prometheus 8.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/rate-limiter 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/resource-limitations 4.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/response-cache 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/response-cache-redis 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/sentry 5.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/statsd 4.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/validation-cache 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/testing 6.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎
@envelop/types 3.0.0-alpha-20221013152202-6bb6b034 npm ↗︎ unpkg ↗︎

@github-actions
Copy link
Contributor

diff --git a/website/algolia-lockfile.json b/website/algolia-lockfile.json
index 0defdb0d..50f91b1d 100644
--- a/website/algolia-lockfile.json
+++ b/website/algolia-lockfile.json
@@ -30,14 +30,18 @@
     "content": "5d95974a9244cda10f2501a4a5ac30e5",
     "url": "https://www.the-guild.dev/graphql/envelop/plugins/[name]",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["Plugins"],
+    "hierarchy": [
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Plugin",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-composing-envelop",
-    "headings": ["Sharing / Composing `envelop` Instances"],
+    "headings": [
+      "Sharing / Composing `envelop` Instances"
+    ],
     "toc": [
       {
         "children": [],
@@ -48,14 +52,19 @@
     "content": "9a51bb770d645582b7752e9b85b4a801",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/composing-envelop",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "Sharing Envelops",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-core",
-    "headings": ["Built-In Plugins", "Utilities"],
+    "headings": [
+      "Built-In Plugins",
+      "Utilities"
+    ],
     "toc": [
       {
         "children": [
@@ -119,7 +128,9 @@
     "content": "be35a0d51bf7f908ec48edc1fd8d706b",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/core",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "@envelop/core",
     "type": "Documentation"
@@ -163,7 +174,9 @@
     "content": "134cbc98495bb19879abd8b3dfb716f2",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/getting-started",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "First Steps",
     "type": "Documentation"
@@ -207,7 +220,10 @@
     "content": "cbb8a7be7c8499a5fe6e8068f2b53712",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/adding-a-graphql-response-cache",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Adding a GraphQL Response Cache",
     "type": "Documentation"
@@ -269,7 +285,10 @@
     "content": "8bbfb8e69f55fd0ee0e48e4a5f172400",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/adding-authentication-with-auth0",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Adding Authentication with Auth0",
     "type": "Documentation"
@@ -307,7 +326,10 @@
     "content": "cf80c05af2892cfd1f0eaaf171cf5a7c",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/integrating-with-databases",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Integrating with Databases",
     "type": "Documentation"
@@ -357,7 +379,10 @@
     "content": "e40ce27d13eb2052bcdf5f0ec196a12c",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/monitoring-and-tracing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Monitoring and Tracing",
     "type": "Documentation"
@@ -369,7 +394,10 @@
     "content": "99208ef40613d9704ae5334b4b47345f",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/resolving-subscription-data-loader-caching-issues",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Resolving Subscription DataLoader Caching Issues",
     "type": "Documentation"
@@ -470,14 +498,20 @@
     "content": "82a223cb2d2c14f6550a23e574ae023c",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/securing-your-graphql-api",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Securing Your GraphQL API",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-guides-using-graphql-features-from-the-future",
-    "headings": ["OneOf Input Objects and OneOf Fields", "Fragment Arguments"],
+    "headings": [
+      "OneOf Input Objects and OneOf Fields",
+      "Fragment Arguments"
+    ],
     "toc": [
       {
         "children": [],
@@ -493,14 +527,19 @@
     "content": "7ab322d195078fb38634ad883f328597",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/guides/using-graphql-features-from-the-future",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Guides"],
+    "hierarchy": [
+      "v2",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Using GraphQL Features from the Future",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-index",
-    "headings": ["Key Concepts"],
+    "headings": [
+      "Key Concepts"
+    ],
     "toc": [
       {
         "children": [
@@ -538,14 +577,18 @@
     "content": "9eead5e02beee1589b8371608af600ac",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/index",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "Introduction",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-integrations",
-    "headings": ["Compatibility Table"],
+    "headings": [
+      "Compatibility Table"
+    ],
     "toc": [
       {
         "children": [],
@@ -556,7 +599,9 @@
     "content": "ca66d1031ca196e79c0ca515d5e1f20e",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/integrations",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "Integrations and Examples",
     "type": "Documentation"
@@ -594,14 +639,21 @@
     "content": "a277534112276c6c30dcc9e3fea26072",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/plugins/custom-plugin",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Plugins"],
+    "hierarchy": [
+      "v2",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Building Plugins",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-plugins-index",
-    "headings": ["How Do Envelop Plugins Work?", "What Plugins Can Do?", "What Plugins Are Available?"],
+    "headings": [
+      "How Do Envelop Plugins Work?",
+      "What Plugins Can Do?",
+      "What Plugins Are Available?"
+    ],
     "toc": [
       {
         "children": [],
@@ -622,14 +674,19 @@
     "content": "32550954ff0b710725049b14558d0d89",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/plugins/index",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Plugins"],
+    "hierarchy": [
+      "v2",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Introduction",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-plugins-lifecycle",
-    "headings": ["Plugins API"],
+    "headings": [
+      "Plugins API"
+    ],
     "toc": [
       {
         "children": [
@@ -687,14 +744,21 @@
     "content": "6f6c6b32cbba90ce0315afed22404e4d",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/plugins/lifecycle",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Plugins"],
+    "hierarchy": [
+      "v2",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Lifecycle",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-plugins-testing",
-    "headings": ["Testing a Plugin", "Testing Envelop Instance", "Additional Resources"],
+    "headings": [
+      "Testing a Plugin",
+      "Testing Envelop Instance",
+      "Additional Resources"
+    ],
     "toc": [
       {
         "children": [],
@@ -732,14 +796,20 @@
     "content": "e37ef9d4353839c88fd2abac87592f56",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/plugins/testing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Plugins"],
+    "hierarchy": [
+      "v2",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Testing",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v2-plugins-typescript",
-    "headings": ["For Plugin Developers", "For Plugins Users"],
+    "headings": [
+      "For Plugin Developers",
+      "For Plugins Users"
+    ],
     "toc": [
       {
         "children": [],
@@ -755,7 +825,10 @@
     "content": "ddf085738f6442ce9dd89d8632e289d0",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/plugins/typescript",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2", "Plugins"],
+    "hierarchy": [
+      "v2",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "TypeScript Support",
     "type": "Documentation"
@@ -767,14 +840,18 @@
     "content": "653c6947e77e5847d560d26674548837",
     "url": "https://www.the-guild.dev/graphql/envelop/docs/tracing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v2"],
+    "hierarchy": [
+      "v2"
+    ],
     "source": "Envelop",
     "title": "Tracing",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-composing-envelop",
-    "headings": ["Sharing / Composing `envelop` Instances"],
+    "headings": [
+      "Sharing / Composing `envelop` Instances"
+    ],
     "toc": [
       {
         "children": [],
@@ -785,14 +862,18 @@
     "content": "9a51bb770d645582b7752e9b85b4a801",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/composing-envelop",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "Sharing Envelops",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-core",
-    "headings": ["Built-In Plugins"],
+    "headings": [
+      "Built-In Plugins"
+    ],
     "toc": [
       {
         "children": [
@@ -840,7 +921,9 @@
     "content": "a0ff5527449f1bafa7655a68a2444aad",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/core",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "@envelop/core",
     "type": "Documentation"
@@ -884,7 +967,9 @@
     "content": "134cbc98495bb19879abd8b3dfb716f2",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/getting-started",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "First Steps",
     "type": "Documentation"
@@ -928,7 +1013,10 @@
     "content": "cbb8a7be7c8499a5fe6e8068f2b53712",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/adding-a-graphql-response-cache",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Adding a GraphQL Response Cache",
     "type": "Documentation"
@@ -990,7 +1078,10 @@
     "content": "8bbfb8e69f55fd0ee0e48e4a5f172400",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/adding-authentication-with-auth0",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Adding Authentication with Auth0",
     "type": "Documentation"
@@ -1028,7 +1119,10 @@
     "content": "cf80c05af2892cfd1f0eaaf171cf5a7c",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/integrating-with-databases",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Integrating with Databases",
     "type": "Documentation"
@@ -1114,7 +1208,10 @@
     "content": "4595b70a4afc4aa14fe23deca5dc0e16",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/migrating-from-v2-to-v3",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Migrating from v2 to v3",
     "type": "Documentation"
@@ -1164,7 +1261,10 @@
     "content": "e40ce27d13eb2052bcdf5f0ec196a12c",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/monitoring-and-tracing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Monitoring and Tracing",
     "type": "Documentation"
@@ -1176,7 +1276,10 @@
     "content": "99208ef40613d9704ae5334b4b47345f",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/resolving-subscription-data-loader-caching-issues",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Resolving Subscription DataLoader Caching Issues",
     "type": "Documentation"
@@ -1277,14 +1380,20 @@
     "content": "46e0f4c15a19b21cadc44ef2d49ff77b",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/securing-your-graphql-api",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Securing Your GraphQL API",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-guides-using-graphql-features-from-the-future",
-    "headings": ["OneOf Input Objects and OneOf Fields", "Fragment Arguments"],
+    "headings": [
+      "OneOf Input Objects and OneOf Fields",
+      "Fragment Arguments"
+    ],
     "toc": [
       {
         "children": [],
@@ -1300,14 +1409,19 @@
     "content": "7ab322d195078fb38634ad883f328597",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/guides/using-graphql-features-from-the-future",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Guides"],
+    "hierarchy": [
+      "v3",
+      "Guides"
+    ],
     "source": "Envelop",
     "title": "Using GraphQL Features from the Future",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-index",
-    "headings": ["Key Concepts"],
+    "headings": [
+      "Key Concepts"
+    ],
     "toc": [
       {
         "children": [
@@ -1345,14 +1459,18 @@
     "content": "1c5f0179c1f4defa9ad4a0d6412c8901",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/index",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "Introduction",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-integrations",
-    "headings": ["Compatibility Table"],
+    "headings": [
+      "Compatibility Table"
+    ],
     "toc": [
       {
         "children": [],
@@ -1363,7 +1481,9 @@
     "content": "ca66d1031ca196e79c0ca515d5e1f20e",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/integrations",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "Integrations and Examples",
     "type": "Documentation"
@@ -1401,7 +1521,10 @@
     "content": "a277534112276c6c30dcc9e3fea26072",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/plugins/custom-plugin",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Plugins"],
+    "hierarchy": [
+      "v3",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Building Plugins",
     "type": "Documentation"
@@ -1439,14 +1562,19 @@
     "content": "ffb765ade71947e8a1874914fa096958",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/plugins/index",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Plugins"],
+    "hierarchy": [
+      "v3",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Introduction",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-plugins-lifecycle",
-    "headings": ["Plugins API"],
+    "headings": [
+      "Plugins API"
+    ],
     "toc": [
       {
         "children": [
@@ -1499,14 +1627,21 @@
     "content": "565e31d4b2567f68186322afe8d23664",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/plugins/lifecycle",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Plugins"],
+    "hierarchy": [
+      "v3",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Lifecycle",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-plugins-testing",
-    "headings": ["Testing a Plugin", "Testing Envelop Instance", "Additional Resources"],
+    "headings": [
+      "Testing a Plugin",
+      "Testing Envelop Instance",
+      "Additional Resources"
+    ],
     "toc": [
       {
         "children": [],
@@ -1544,14 +1679,20 @@
     "content": "e37ef9d4353839c88fd2abac87592f56",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/plugins/testing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Plugins"],
+    "hierarchy": [
+      "v3",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "Testing",
     "type": "Documentation"
   },
   {
     "objectID": "envelop-v3-plugins-typescript",
-    "headings": ["For Plugin Developers", "For Plugins Users"],
+    "headings": [
+      "For Plugin Developers",
+      "For Plugins Users"
+    ],
     "toc": [
       {
         "children": [],
@@ -1567,7 +1708,10 @@
     "content": "ddf085738f6442ce9dd89d8632e289d0",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/plugins/typescript",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3", "Plugins"],
+    "hierarchy": [
+      "v3",
+      "Plugins"
+    ],
     "source": "Envelop",
     "title": "TypeScript Support",
     "type": "Documentation"
@@ -1579,9 +1723,11 @@
     "content": "653c6947e77e5847d560d26674548837",
     "url": "https://www.the-guild.dev/graphql/envelop/v3/tracing",
     "domain": "https://www.the-guild.dev/graphql/envelop/",
-    "hierarchy": ["v3"],
+    "hierarchy": [
+      "v3"
+    ],
     "source": "Envelop",
     "title": "Tracing",
     "type": "Documentation"
   }
-]
+]
\ No newline at end of file

@theguild-bot
Copy link
Collaborator

theguild-bot commented Oct 13, 2022

✅ Benchmark Results

     ✓ no_errors
     ✓ expected_result

     checks.............................................: 100.00% ✓ 663960      ✗ 0     
     data_received......................................: 2.5 GB  17 MB/s
     data_sent..........................................: 144 MB  962 kB/s
     envelop_total......................................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:envelop-cache-jit }.......................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:envelop-just-cache }......................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:graphql-js }..............................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:prom-tracing }............................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     event_loop_lag.....................................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:envelop-cache-and-no-internal-tracing }...: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:envelop-cache-jit }.......................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:envelop-just-cache }......................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:graphql-js }..............................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     ✓ { mode:prom-tracing }............................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     http_req_blocked...................................: avg=2.61µs  min=600ns    med=1.1µs   max=21.79ms p(90)=1.7µs   p(95)=2.2µs  
     http_req_connecting................................: avg=731ns   min=0s       med=0s      max=21.75ms p(90)=0s      p(95)=0s     
     http_req_duration..................................: avg=4.18ms  min=164.89µs med=2.7ms   max=78.2ms  p(90)=9.09ms  p(95)=15.08ms
       { expected_response:true }.......................: avg=4.18ms  min=164.89µs med=2.7ms   max=78.2ms  p(90)=9.09ms  p(95)=15.08ms
     ✓ { mode:envelop-cache-and-no-internal-tracing }...: avg=3.44ms  min=343.39µs med=2.67ms  max=37.04ms p(90)=5.56ms  p(95)=6.66ms 
     ✓ { mode:envelop-cache-jit }.......................: avg=2.26ms  min=164.89µs med=1.67ms  max=28.41ms p(90)=4.37ms  p(95)=8.04ms 
     ✓ { mode:envelop-just-cache }......................: avg=3.56ms  min=401.1µs  med=2.72ms  max=42.64ms p(90)=5.79ms  p(95)=7.35ms 
     ✓ { mode:graphql-js }..............................: avg=6.38ms  min=666.8µs  med=4.96ms  max=53.81ms p(90)=10.46ms p(95)=11.62ms
     ✓ { mode:prom-tracing }............................: avg=18.1ms  min=2.52ms   med=16.24ms max=78.2ms  p(90)=31.35ms p(95)=32.66ms
     http_req_failed....................................: 0.00%   ✓ 0           ✗ 331980
     http_req_receiving.................................: avg=42.64µs min=11.3µs   med=18.7µs  max=37.96ms p(90)=27.69µs p(95)=34.1µs 
     http_req_sending...................................: avg=34.58µs min=4.09µs   med=6.7µs   max=23.48ms p(90)=12.7µs  p(95)=19.09µs
     http_req_tls_handshaking...........................: avg=0s      min=0s       med=0s      max=0s      p(90)=0s      p(95)=0s     
     http_req_waiting...................................: avg=4.1ms   min=135.6µs  med=2.66ms  max=78.13ms p(90)=8.72ms  p(95)=15.01ms
     http_reqs..........................................: 331980  2213.040052/s
     iteration_duration.................................: avg=4.51ms  min=361.99µs med=2.94ms  max=78.54ms p(90)=9.82ms  p(95)=15.4ms 
     iterations.........................................: 331980  2213.040052/s
     vus................................................: 10      min=10        max=12  
     vus_max............................................: 20      min=20        max=20  

@github-actions
Copy link
Contributor

github-actions bot commented Oct 13, 2022

🚀 Website Preview

The latest changes to the website are available as preview in: https://0defd471.envelop.pages.dev

@saihaj saihaj merged commit 1da52ee into main Oct 13, 2022
@saihaj saihaj deleted the include-default-validation-rules branch October 13, 2022 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants