Tsd: يستنكر TSD

تم إنشاؤها على ٢٦ يناير ٢٠١٦  ·  15تعليقات  ·  مصدر: DefinitelyTyped/tsd

لقد تطور مشروع Typings (https://github.com/typings/typings) ويمكنه حاليًا أن يستهلك نوع DefinitelyTyped كمجموعة فرعية من النظام البيئي. لقد أدى هذا التحسين إلى جعل صيانة TSD زائدة عن الحاجة وبمرور الوقت يجب كتابة التعريفات كوحدات نمطية خارجية مع typings.json ، أو تحويلها بشكل مضمن مع مكتبات لمجمع TypeScript ليتم استهلاكه مباشرة.

سيتم إغلاق هذه المشكلة عند إنشاء موقع ويب رسمي للكتابة ويمكن ربط الوثائق المحسنة به. يعمل حاليًا بمثابة إشعار للمستخدمين الجدد أو الحاليين.

لمواصلة تثبيت تعريفات الأنواع من DefinitelyTyped ، تذكر استخدام علامة --ambient (كل شيء في DefinitelyTyped هو "عام" بشكل أساسي). إذا كنت تنوي نشر مكتبة باستخدام التبعيات بدون تعريفات النوع (على سبيل المثال ، قمت بتثبيت كتابات من نوع DefinitelyTyped / Typings) ، فستحتاج إلى التأكد من أنها تبعيات (وليست محيطة). القضية الأساسية مع التبعيات العالمية هي الصيانة والصراعات.

typings install node --save --ambient

سيستمر الرد على قضايا وطالبات TSD PR ، ولكن التطوير فعال في موسوعة الحياة. إذا رغب مطور آخر في الحصول على الصيانة و / أو التطوير ، فنحن نرحب بك للمساهمة. يجب حل المشكلات الحالية بالفعل باستخدام Typings ، ولكن إذا وجدت شيئًا لا يعمل - قم بإثارة مشكلة في Typings.

الروابط: https://github.com/DefinitelyTyped/tsd/issues/150 و https://github.com/typings/discussions/issues/5 و https://github.com/typings/typings/issues/125.

تحرير: طبقت الكتابة أمر ترقية لمستخدمي TSD. ستؤدي الترقية فقط إلى تحويل تنسيق tsd.json إلى typings.json ، وقد يكون هناك تعديلات إضافية تحتاج إلى إجرائها (مثل تصحيح المراجع التي تم تجريدها الآن).

typings init --upgrade
important notice

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

: +1:

للمراجع للترقية من tsd

webpack + المطبوع عليه
https://github.com/angular/universal-starter/commit/cfb7b52b12e1da9de7ee7c2a452e7636c93aaa09

gulpjs + مطبوعة
https://github.com/angular/answers-app/pull/27/files

gulpjs مع الكتابة المطبوعة
https://gist.github.com/gdi2290/e544407980e261acc172

أوامر

$ npm uninstall tsd
$ rm -rf typings
$ npm install typings
$ typings init --upgrade
$ rm tsd.json
$ typings install

ال 15 كومينتر

: +1:

للمراجع للترقية من tsd

webpack + المطبوع عليه
https://github.com/angular/universal-starter/commit/cfb7b52b12e1da9de7ee7c2a452e7636c93aaa09

gulpjs + مطبوعة
https://github.com/angular/answers-app/pull/27/files

gulpjs مع الكتابة المطبوعة
https://gist.github.com/gdi2290/e544407980e261acc172

أوامر

$ npm uninstall tsd
$ rm -rf typings
$ npm install typings
$ typings init --upgrade
$ rm tsd.json
$ typings install

مجرد إضافة صغيرة إلى خطوات ترحيل @ gdi2290 بخصوص شيء حدث لي للتو.
إذا تبعها شخص ما وانتهى الأمر بمئات TS2300: duplicate indetifier ... أثناء التجميع ، فإن الحل هنا https://www.npmjs.com/package/typings#maindts -and-browserdts

كيف تفعل tsd link بالطباعة؟

كيف تربط tsd بالكتابات؟

لا تفعل. رابط TSD معيب وليس حلاً قويًا طويل المدى - لأنه يعتمد على الوحدات النمطية المحيطة ، ويسبب معرفات مكررة ويجبر المستخدمين عمومًا على إعادة تثبيت التبعيات الفرعية. بافتراض أنك تريد نفس الشيء بالضبط ، يمكنك فعل typings install npm:<library>/<path-to-d-ts> --ambient . على الأرجح ، أنت تريد حلاً مختلفًا حيث يتم التعامل مع التبعيات الفرعية بشكل صحيح. في هذه الحالة ، انشر ملف typings.json مع مكتبتك وافعل typings install npm:<library> --save - سيتم حل التبعيات في <library>/typings.json .

واجهت مشكلة في تثبيت كتابات من مستودع آخر. تم إنشاء عدد جديد: https://github.com/typings/typings/issues/133

فقط أتساءل ما هي الرؤية / القصد هنا لـ Defin definitelyTyped / tsd vs Typings؟ لقد فهمت أن Typings لامركزية ويمكنها التحدث إلى DefinitelyTyped ، لكنني أعلم أيضًا أن Typings لديها اتفاقيات إعادة شراء لبعض المشاريع الشائعة أيضًا ... ومن هنا سؤالي.

ألن يكون من المنطقي أن يتم فرض مركزية جميع أنواع الحروف في تثبيتات الحزمة npm بدلاً من تكرار نصف البنية التحتية داخل مشاريعنا المحلية؟

  • لا tsd
  • ممنوع الطباعة
  • لا يوجد تكرار للجهد
  • لا تكرر آثار التبعية ...

JSPM هي مثال مثير للقلق

تمتلك NPM بالفعل التجهيزات اللازمة لدعم ومعالجة ذلك.

هل هناك من ينظّر حتى لتأثير التبعيات العابرة؟

لن أرسل طفلي إلى حضانة نهارية ، والتي تُنقل المهمة إلى حضانة نهارية أخرى في مكان آخر ... شيء ما سينفصل في النهاية ... ناهيك عن تبعية عابرة واحدة تتجول عبر النظام البيئي.

nhhockeyplayer من الناحية المثالية سيكون هذا هو الحال ولكن لكي يحدث هذا ، سيحتاج كل مؤلف إلى تضمين تعريفات النوع والحفاظ عليها.

متعلق ب

بالنسبة إلى Angular 2 ، يمكننا أن نفترض أن كل وحدة ng2 ستشمل تعريفات النوع ولكن بالنسبة للوحدات النمطية الأخرى التي من المحتمل ألا تكون كذلك. لذلك سيكون هناك مجتمع (ng2) سيستفيد أكثر من خلال التأكد من أن كل وحدة في نظامه البيئي تتضمن تعريفات النوع (الحالة المثالية).

blakeembrey آسف npm مما قد يؤدي إلى استمرار الأشخاص في استخدامه دون معرفة أولية بأن الحزمة قد تم إهمالها. من المحتمل أنه لم يكن هناك إصدار جديد منذ أن تم إهمال الحزمة.

إذا قمت بتثبيت NPM ، فإنه يقول ذلك.

تحرير: لكنني سأتحقق من ذلك وأطلق نسخة جديدة.

رائع ، فلا بأس بذلك 👍

هل يمكنك إضافة إشعار الإيقاف إلى صفحة npm ؟
يسهل على العائدين اكتشاف الكتابة.

سيكون من الرائع شحن النسخة الكاملة والمنتهية من typings أولاً ثم إهمال tsd لأن typings يجعل الأمور أكثر صعوبة وإرباكًا مع هذه الفوضى مع عدة مستودعات IMO. 😠

هناك أربع مشكلات في صفحة المشكلات هذه تعود الآن إلى أشهر ، مما يشير إلى أن tsd لم يعد يعمل لتثبيت الحزم الأساسية مثل jquery أو رد الفعل. إن استنكار أو وقف التنمية شيء واحد ، ولكن يبدو أن tsd قد تم إيقافه بالفعل (؟). هذه مشكلة حقيقية - خاصة أنه يبدو أنه لم يكن هناك أي نوع من خدمة الإعلان الصريح التي تم إيقافها تمامًا - نظرًا لأن tsd هو نوع الأداة التي يمكن أن تكون جزءًا من النشر الآلي. لقد حصلت للتو على خدمة ويب تقتل نفسها لأن نشرها الآلي يعمل tsd ، والذي لم يعد يعمل.

تقول أنه تم إيقاف العمل به عند التثبيت منذ أكثر من عام حتى الآن. نظرًا لأن TSD يعتمد على GitHub ، فلا يزال كل شيء يعمل بشكل جيد. ما ستراه هو بالتأكيد نوع التغييرات. لا تستطيع بنية TSD التعامل مع التغييرات ، وكان الانتقال قرارًا من TypeScript لدعم NPM @types .

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