<p>apollo-link 1.2.5 / 1.2.6 يسبب أخطاء ترجمة مطبعية</p>

تم إنشاؤها على ١٦ يناير ٢٠١٩  ·  39تعليقات  ·  مصدر: apollographql/apollo-link

تم تقديمه مع هذا العلاقات العامة:
https://github.com/apollographql/apollo-link/pull/804

يتسبب ExecutionResult<TData> في ظهور أخطاء في برامج التحويل البرمجي التي تستخدم في الكتابة المطبوعة الحديثة.

الخطأ المطبوع عليه:

../node_modules/apollo-link/lib/types.d.ts:22:56 - error TS2315: Type 'ExecutionResult' is not generic.

22 }, C = Record<string, any>, E = Record<string, any>> = ExecutionResult<TData> & {
                                                          ~~~~~~~~~~~~~~~~~~~~~~


Found 1 error.

التعليق الأكثر فائدة

لقد اكتشفت أن الرجوع إلى إصدار سابق لـ graphql من 15.0.0 -> 14.6.0 يحل المشكلة.

ال 39 كومينتر

حسنًا ، يبدو أن الشفرة لا تزال قيد التشغيل "DefinitelyTyped" ، لذا يجب أن تظل الشفرة المقدمة في # 804 صحيحة.

https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/graphql/execution/execute.d.ts#L43

/**
 * The result of GraphQL execution.
 *
 *   - `errors` is included when any errors occurred as a non-empty array.
 *   - `data` is the result of a successful execution of the query.
 */
export interface ExecutionResult<TData = ExecutionResultDataDefault> {
    errors?: ReadonlyArray<GraphQLError>;
    data?: TData;
}

سوف تحتاج إلى التأكد من أن @ أنواع / graphql الخاصة بك محدثة.

وجد syndesis أنه كان يستخدم @ types / graphql 0.12.6 عمره 10 أشهر. https://www.npmjs.com/package/@types/graphql

نتطلع إلى رؤية متطلبات الإصدار الأدنى الآن.

عادل بما يكفي إذا كانت هناك حاجة إلى إصدار Graphql lib أحدث ، فقد أستخدم أيضًا إصدارًا أقدم بسبب تبعيات مكتبة أخرى.

gaberudy نحن نتحادث في #contributing الآن على Slack إذا كنت تريد الانضمام

gaberudy هل تستخدم أيضًا apollo-link-dedup؟

لدي نفس المشكلة عند استيراد حزمة graphql-tools

يمكنك حل هذه المشكلة باستخدام قسم resolutions مثل هذا في الحزمة الخاصة بك. json:

"resolutions": {
    "apollo-link-dedup": "^1.0.13",
    "@types/graphql": "^14.0.0"
  }

إغلاق هذا لأنه تم حله ، إذا كان أي شخص لا يزال لديه مشكلة بعد الإصلاح المقترح مع الحلول ، فلا تتردد في إعادة فتحه.

يمكنك حل هذه المشكلة باستخدام قسم resolutions مثل هذا في الحزمة الخاصة بك. json:

"resolutions": {
    "apollo-link-dedup": "^1.0.13",
    "@types/graphql": "^14.0.0"
  }

لسوء الحظ ، هذا لم يحل المشكلة بالنسبة لي

هذه المشكلة ما زالت لم تحل

هذا يحدث لي بعد الترقية إلى أحدث الباقات. هل يمكننا إعادة فتح هذا من فضلك؟

الحل المقترح لا يعمل ، وأنا لا أستخدم dedup.

لدي نفس المشكلة.

لقد حاولت بالفعل:

  • حل القرار.
  • ترقية أبولو و Graphql

أي اقتراحات أخرى؟

أي إصلاحات لهذه المشكلة؟

@ qin-guan ، يجب ترقية التبعيات الخاصة بك ، ولكن تأكد أيضًا من ترقية التبعيات متعدية. أسهل طريقة للقيام بذلك هي إزالة node_modules وملف القفل ، ثم التثبيت مرة أخرى. إذا لم تقم بإزالة ملف القفل ، فقد تتعثر بالفعل مع إصدار قديم (راجع https://github.com/yarnpkg/yarn/issues/4986).

لقد اكتشفت أن الرجوع إلى إصدار سابق لـ graphql من 15.0.0 -> 14.6.0 يحل المشكلة.

PowerKiKi ، حل @ david-wb يناسبني ، لم تنجح ترقية الأقسام الخاصة بي

هذه الحزمة تتفكك مع أحدث إصدار graphql: ^15.0.0 . أي أفكار حول كيفية إصلاح هذا الأخير؟

johannesschobel حاول القراءة قبل التعليق. ستحتاج إلى الرجوع إلى إصدار سابق الآن.

عزيزي OmgImAlexis ،
نعم ، أعلم - وقد قرأت "الحل البديل الحالي" بخصوص الرجوع إلى إصدار سابق إلى 14.6.0 . ومع ذلك ، هذا هو العائق الحالي بالنسبة لي ، حيث تعتمد الحزم الأخرى بالفعل على 15.0 ، لذلك أنا عالق تمامًا ..

أتمنى لك كل خير

هذه القضية سيئة حقا. كيف لا تزال غير ثابتة ؟؟

فقط ركضت في هذا أيضا ...

الطريقة الوحيدة لحل هذه المشكلة كانت تخفيض مستوى الرسم البياني إلى 14.6.0

لقد واجهت هذا الخطأ لأن لديّ functions dir لوظائف السحابة داخل جذر مشروعي ، والذي يمتلك node_modules للعميل. يستخدم العميل 14 سلسلة ، ويستخدم الخادم 15 سلسلة.

لقد قمت بحل مشكلة patch-package

إضافة ملف يسمى functions/patches/graphql+15.0.0.patch مع هذا المحتوى:

diff --git a/node_modules/graphql/execution/execute.d.ts b/node_modules/graphql/execution/execute.d.ts
index 46a1bc6..4ddbfb5 100644
--- a/node_modules/graphql/execution/execute.d.ts
+++ b/node_modules/graphql/execution/execute.d.ts
@@ -37,15 +37,20 @@ export interface ExecutionContext {
   errors: Array<GraphQLError>;
 }

+export interface ExecutionResultDataDefault {
+  [key: string]: any;
+}
+
 /**
  * The result of GraphQL execution.
  *
  *   - `errors` is included when any errors occurred as a non-empty array.
  *   - `data` is the result of a successful execution of the query.
  */
-export interface ExecutionResult {
+// TS_SPECIFIC: TData and ExecutionResultDataDefault
+export interface ExecutionResult<TData = ExecutionResultDataDefault> {
   errors?: ReadonlyArray<GraphQLError>;
-  data?: { [key: string]: any } | null;
+  data?: TData | null;
 }

 export type ExecutionArgs = {

ثم أضف npx patch-package إلى postinstall

يؤثر التصحيح فقط على كتابة ts ، لذا يبدو للوهلة الأولى أنه حل آمن حتى يحل المنبع المشكلة.

نعم ، كان علي العودة إلى

"graphql": "^14.6.0"

من

"graphql": "10.0.0",

للحصول على هذا للعمل.

gaberudy هل سنرى تحديثًا لهذا؟ لقد كان مفتوحًا الآن لمدة 3 أشهر.

هل يمكن أيضًا قفله حتى لا نحصل باستمرار على تعليقات "اضطررت إلى التراجع عن"؟

اضطررت أيضًا إلى الرجوع من 15 إلى 14.6.0

هل تم إصلاح ذلك من خلال https://github.com/apollographql/apollo-link/pull/1263 ولكن لم يتم نشره بالكامل في الحزم التي تعتمد عليه حتى الآن؟

عزيزي abernix ، شكرًا على الإشارة إلى هذا الأمر. يبدو أنه تمت معالجة المشكلة الأصلية وإصلاحها. ومع ذلك ، فإن apollo-client لم يقم بذلك وهو يقوم الآن بإلقاء نفس الأخطاء: الضحك:

تضمين التغريدة

هل سنرى تحديثًا لهذا؟ لقد كان مفتوحًا الآن لمدة 3 أشهر.

أعتقد أنك فاتتك عام 2019 ؛-) لقد مضى أكثر من عام بالفعل.

تم إصلاح إصدارات التبعية والقرارات أدناه بالنسبة لي - والأهم من ذلك ، دقة apollo-link إلى ^1.2.14 . سيؤدي هذا إلى إجبار أي حزمة تستخدم رابط أبولو على استخدام أحدث إصدار (بغض النظر عما تحدده في تبعياتها). بالنسبة لي ، كانت الحزمة aws-appsync المثبتة في "apollo-link": "1.2.3"

  "resolutions": {
    "apollo-link": "^1.2.14"
  },
  "dependencies": {
    "graphql": "^14.6.0",
  }

لقد حصلت للتو على هذه المشكلة. اضطررت إلى الرجوع إلى إصدار سابق أيضًا. كيف يمكن أن تظل مثل هذه القضية هنا؟

في الواقع .. أدى الرجوع إلى [email protected] إلى إصلاح المشكلة بالنسبة لي أيضًا.

وجود مشكلة النوع العام مع الكتابة المطبوعة على [email protected]

@ david-wb بفضل العمل بشكل جيد بعد الرجوع إلى الإصدار 14.6.0

ERROR in node_modules/apollo-client/core/watchQueryOptions.d.ts:56:32 - error TS2315: Type 'ExecutionResult' is not generic.       

56     refetchQueries?: ((result: ExecutionResult<T>) => RefetchQueryDescription) | RefetchQueryDescription;
                                  ~~~~~~~~~~~~~~~~~~
node_modules/apollo-client/core/LocalState.d.ts:40:23 - error TS2315: Type 'ExecutionResult' is not generic.

40         remoteResult: ExecutionResult<TData>;
                         ~~~~~~~~~~~~~~~~~~~~~~
node_modules/apollo-client/core/LocalState.d.ts:44:17 - error TS2315: Type 'ExecutionResult' is not generic.

44     }): Promise<ExecutionResult<TData>>;
                   ~~~~~~~~~~~~~~~~~~~~~~

كان لدي الخطأ أعلاه مع "graphql": "^15.0.0" ، بعد الرجوع إلى "graphql": "^14.6.0" وعمل npm install عملت معي

تمت معالجة هذا في https://github.com/apollographql/apollo-client/pull/6258. إذا كان أي شخص لا يزال يواجه هذه المشكلة ، فيرجى محاولة التحديث إلى [email protected] . شكرا!

استخدام [email protected] لم ينجح معي

moritzewert هل ما زلت ترى أخطاء ExecutionResult أم شيء آخر؟ هل يمكنك ترحيل ناتج التشغيل: npx envinfo<strong i="7">@latest</strong> --preset apollo

مرحبا @ hwillson ،
أرى هذه المشكلة بعد ترقية الرسم البياني للقيمة من 14.6.0 إلى 15.0.0 .
الخطأ:

Type 'ExecutionResult' is not generic.
    21 | export declare type FetchResult<TData = {
    22 |     [key: string]: any;
  > 23 | }, C = Record<string, any>, E = Record<string, any>> = ExecutionResult<TData> & {
       |                                                        ^
    24 |     extensions?: E;
    25 |     context?: C;
    26 | };
Version: typescript 3.9.3

هنا معلوماتي البيئية:

$ npx envinfo<strong i="14">@latest</strong> --preset apollo
npx: installed 1 in 1.063s

  System:
    OS: macOS 10.15.4
  Binaries:
    Node: 10.19.0 - ~/.nvm/versions/node/v10.19.0/bin/node
    Yarn: 1.22.4 - /usr/local/bin/yarn
    npm: 6.14.1 - ~/code/frontend/node_modules/.bin/npm
  Browsers:
    Chrome: 83.0.4103.61
    Edge: 83.0.478.44
    Firefox: 76.0.1
    Safari: 13.1
  npmPackages:
    apollo-boost: ^0.4.7 => 0.4.9
    apollo-cache-inmemory: ^1.6.6 => 1.6.6
    apollo-client: ^2.6.10 => 2.6.10
    apollo-codegen: ^0.20.2 => 0.20.2
    apollo-link: ^1.2.14 => 1.2.14
    apollo-link-context: ^1.0.20 => 1.0.20
    apollo-link-http: ^1.5.17 => 1.5.17
    apollo-link-state: ^0.4.2 => 0.4.2
    apollo-link-ws: ^1.0.20 => 1.0.20

شكرا!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات