Node-redis: خريطة الطريق

تم إنشاؤها على ٢١ أبريل ٢٠١٦  ·  17تعليقات  ·  مصدر: NodeRedis/node-redis

تحرير: Salakar : انظر التعليق أدناه ؛ https://github.com/NodeRedis/node_redis/issues/1040#issuecomment -581418899


لم يتم فرز خريطة الطريق هذه وليس لها تواريخ محددة ولكنها مزيج عام للأشياء.

الميزات الرئيسية المطلوب تنفيذها

  • [ ] العنقودية
  • [ ] الحارس
  • [] محولات الإدخال
  • [] محولات الإخراج
  • [] دعم الوعد الأصلي
  • [] محدد قائمة الانتظار دون اتصال
  • [] دعم أفضل للبرنامج النصي / إضافة أوامر فردية
  • [] وظيفة أفضل للبقاء على قيد الحياة / تحسين اكتشاف الاتصالات الميتة

    أشياء أخرى يجب معالجتها

  • [] توثيق كل الكود (JSDoc)

  • [] جعل API غير موثق خاصًا
  • [] تحديث وثائق README لتصبح أكثر فائدة
  • [] إصلاح النوافذ تفرخ على appveyor
  • [x] تكديس أفضل عندما لا تكون في وضع الإنتاج
  • [] اختبارات الدخان

إذا كنت تشعر أن هناك شيئًا ما مفقودًا ، فلا تتردد في تقديم مزيد من الاقتراحات / فتح طلب ميزة لذلك.

meta

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

مرحبًا بالجميع ، لقد توليت منصب المشرف الرئيسي ولديّ كل إمكانية الوصول المطلوبة الآن 🎉 شكرًا جزيلًا لـ BridgeAR على كل العمل الذي أنجزه (ويقوم به) في هذه المكتبة وعلى السماح لي بتولي المهمة.

لقد أمضيت الأيام القليلة الماضية في الاستعداد للإصدار ، ومنذ بضع دقائق قمت بنشر الإصدار 3.0.0 إلى NPM ؛ https://github.com/NodeRedis/node-redis/releases/tag/v3.0.0 - والذي يتضمن هذا التغيير.

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

  • [x] تقديم المستندات وقواعد السلوك
  • [x] إعداد سياسة النفقات الجماعية والمساهمين

    • ستلاحظ الزر الجديد اللامع Sponsor في الجزء العلوي من GitHub ، لقد تقدمت أيضًا وقمت برعايته بنفسي ومن خلال شركتي للمساعدة في بدء تشغيله لأي مساهمين في المستقبل

  • العمل قيد التقدم: أتمتة الإصدار والإصدار الدلالي (النشر إلى NPM ، إنشاء سجلات التغيير ، إلخ)
  • [x] تحسين CI ، على سبيل المثال ، Windows CI بطيء للغاية ومتقشر في الوقت الحالي

بعد ذلك ، سأحول انتباهي إلى التحديث (على سبيل المثال ، الوعود ، الكتابة المطبوعة) وتصفية الديون الفنية في قاعدة بيانات Node Redis. لقد قام BridgeAR بالفعل بتحميل قارب من الأشياء لهذا الغرض ، إذا كنت فضوليًا تحقق من فرع WIP

ال 17 كومينتر

1085 هل لدينا دعم لعلامة NX / XX لأوامر مثل ZADD

لقد مرت بضعة أشهر ، هل هناك أي جدول زمني محدث على هذه الجبهة؟

+1

هل ستأتي أي فرصة لدعم الكتلة / التجزئة قريبًا؟ AWS لديها دعم مجموعة redis على ElastiCache وأود استخدامه ، ولكن هذا lib يحتاج إلى مواكبة تلك الميزة المحددة حتى يكون ذلك قابلاً للتطبيق حقًا :(

يجب تثبيت هذه المشكلة IMHO

أيضًا https://github.com/gosquared/redis-clustr قد يكون حلاً جيدًا بما يكفي لدعم الكتلة؟

غلاف مكافئ للحارس سيكون رائعًا. ربما https://www.npmjs.com/package/redis-sentinel ولكن يبدو أنه مات (4 سنوات منذ آخر نشر).

ربما ينبغي أن نناقش مستقبل هذا المستودع هنا ؛ كان آخر نشر لهذه الحزمة إلى NPM منذ أكثر من عامين ، وهناك إصلاحات على الماجستير لم يتم نشرها إلى NPM منذ ما يقرب من عامين ، على سبيل المثال https://github.com/NodeRedis/node_redis/issues/1331 ؛

لاحظ أن هذا ليس أنا أشكو من BridgeAR ، فهو في الواقع يقوم بعمل رائع في nodejs ، لذلك من المفهوم أن وقته لهذا الريبو محدود.

أنا على استعداد لتحمل بعض عبء الصيانة ولكني أرغب في بعض الأفكار حول مسار الإجراء الذي يمكننا اتخاذه لهذا الغرض نظرًا لأن الوصول إلى النشر NPM غير متاح للمستودع الحالي (لقد طلبت ذلك عدة مرات على مر السنين) .

في الوقت الحالي ، يبدو أن الخيار الوحيد هو الانقسام والبدء من جديد ، ما لم نتمكن من الوصول.

Salakar أنا أيضًا على استعداد للمساعدة في دفع هذه الحزمة إلى الأمام. لست متأكدًا تمامًا من سبب حاجتنا إلى التخلي عن اسم حزمة NPM ("redis" قوي). ألا تتحكم BridgeAR في حزمة NPM وتحتاج إلى نقلها إلى شخص ما؟ كان هناك القليل من الإجراءات في شهور عديدة ، وأنا لا أفهم تمامًا منطق الجلوس عليها ، لأكون صادقًا.

لا أعتقد أنه يجب علينا إهمال هذه الحزمة - إنها قاعدة بيانات جيدة يمكن تحديثها ويعتمد عليها عدد كبير من الحزم الأخرى.

الشيء الآخر الذي أود أن أعرضه هو تغييرات RESP3 / Redis 6 القادمة التي ستتطلب تعديلات كبيرة. لقد بحثت في ميزة قائمة التحكم بالوصول (ACL) في Redis 6 والتي يجب أن تكون سهلة الدعم ولكننا سنحتاج إلى بعض عمليات إعادة البناء الجادة لـ node_redis. ستدعم وظيفتي (في Redis Labs) عملي في هذه الوحدة ، ولكن إذا لم نتمكن من إصدار NPM ، فلا معنى لاستثمار الوقت.

ألا تتحكم BridgeAR في حزمة NPM وتحتاج إلى نقلها إلى شخص ما؟ كان هناك القليل من الإجراءات في شهور عديدة ، وأنا لا أفهم تمامًا منطق الجلوس عليها ، لأكون صادقًا.

هذا صحيح ، لكنني أطلب وصول NPM للنشر منذ فبراير 2018 ، ومرة ​​أخرى في فبراير 2019 ، وآخر طلب في سبتمبر 2019. لقد تلقيت ردودًا ولكن ليس حول موضوع طلب وصول NPM للنشر 🤷‍♂. https://github.com/NodeRedis/node_redis/issues/1402#issuecomment -490273744 ربما يعطي بعض المؤشرات على النوايا؟

إذا لم يحدث التحويل ، فأعتقد أنه يجب توضيحه حتى نتمكن من المضي قدمًا.

ioredis على سبيل المثال أمر رائع حقًا ، وكانت هناك محادثات حول دمج المكتبات مرة أخرى في اليوم (لقد عملت على بعض الأدوات الأساسية لذلك مثل المحلل اللغوي الجديد و denque lib وحساب فتحة مفتاح المجموعة وما إلى ذلك): https: // github.com/NodeRedis/node_redis#consolidation -its-time-for-celebration - ما زلت أعتقد أنه يجب أن يكون الهدف طويل المدى؟

خارج الموضوع لكنني بدأت في تجربة بناء عميل جديد منذ فترة ؛ https://twitter.com/mikediarmid/status/1074240036936318976 - لكنني توقفت عن ذلك على أمل أن يبدأ هذا مرة أخرى أو المساعدة في التوحيد ؛

ربما يكون هذا أيضًا طريق 🤷‍♂

image

Salakar هل تحدثت إلى أي من مالكي NPM الآخرين (مات ، بن ، أو بريس)؟ إذا كان روبن هو MIA ، فعندئذ إذا أردنا أن يمضي المشروع قدمًا ، فلا أعتقد أن شخصًا واحدًا يجب أن يكون عقبة في الطريق. هذا النوع من المشاكل هو سبب إعداده بهذه الطريقة ، على ما أفترض. أجد التعليق على 1402 مقلقًا بالنسبة لمشروع مفتوح المصدر ، خاصةً المشروع غير المرتبط (تنظيميًا) بشخص واحد.

أوافق ، ioredis جيد ولكن لا أعتقد أنه حل واحد يناسب الجميع. فيما يتعلق بالتوحيد ، اعتقدت أن المحلل اللغوي الموحد هو الهدف الرئيسي الذي تم تحقيقه بالفعل. لم أفكر أبدًا في أنه سيكون هناك وحدة واحدة بالكامل ، فقط بالنظر إلى الاختلافات النحوية.

stockholmux: وظيفتي (في Redis Labs) ستدعم عملي في هذه الوحدة ، لكن إذا لم نتمكن من إصدار NPM ، فلا معنى لاستثمار الوقت.

كما سبق ، نحن على استعداد لتكريس المورد لهذا أيضًا invertase ، ولكن إذا لم نتمكن من نشره ، فلن يكون ذلك منطقيًا بالنسبة لنا أيضًا.


stockholmux:Salakar هل تحدثت إلى أي من مالكي NPM الآخرين (مات ، بن ، أو بريس)؟

هذه نقطة جيدة ، لم أفعل ، سأتواصل معهم قريبًا.


stockholmux : أوافق ، ioredis جيد ولكن لا أعتقد أنه حل واحد يناسب الجميع. فيما يتعلق بالتوحيد ، اعتقدت أن المحلل اللغوي الموحد هو الهدف الرئيسي الذي تم تحقيقه بالفعل. لم أفكر أبدًا في أنه سيكون هناك وحدة واحدة بالكامل ، فقط بالنظر إلى الاختلافات النحوية.

بدافع الاهتمام ، ما هي متطلباتك التي redis lib لكن ioredis لا يلبيها؟ تضمنت متطلباتي التجميع والحارس الذي لا يدعمه حاليًا redis باستثناء بعض حزم الجهات الخارجية ، والتي تم التخلي عن بعضها أيضًا.

ربما يمكن أيضًا مشاركة بروتوكولات الاتصال الأساسية بين المكتبتين ، ثم كيف تتعامل مع كل منهما مختلف؟

Salakar يعجبني النهج المعياري للحارس والتكتل فوق النهج الأحادي لـ ioredis (مرة أخرى ، نحتاج إلى التعامل مع البرامج المهجورة). بعض الناس بحاجة إلى هذا ، والبعض الآخر لا. النظام البيئي لشركة Redis بشكل عام يكبر والوحدات النمطية هي طريقة لدعم المزيد دون تعقيد ، IMHO. Ioredis هو أكبر بكثير من التعليمات البرمجية (18897 مقابل 7038 سطرًا من التعليمات البرمجية) ، والتي قد تكون المزيد من الميزات ، لكنني أفضل ألا يكون لدي الكثير من الأشياء الإضافية التي لا أستخدمها.

المكان الذي أعتقد أن node_redis فيه ميزة كبيرة هو دعم وحدة Redis ، وهو أمر سهل مع node_redis وبدلاً من ذلك مع الألم مع ioredis.

لقد تواصلت مع mranney عبر Twitter DMs وسألت عما إذا كان يمكنه منح نفسي ومالك stockholmux حق الوصول إلى GitHub org وحزم NPM ، لذلك سنرى ما يأتي من ذلك.

أعتقد أني و stockholmux أوافقان على أن الحفاظ على كل شيء ونشره من مكانه الحالي هو أفضل طريقة للمضي قدمًا - يجب أن نكون قادرين على ذلك. إذا لم يكن الأمر كذلك ، أعتقد أنه يمكننا النظر في البدائل ، على الرغم من أنني لا أفضل ذلك.

اقتراح صغير. ربما يجب عليك التفكير في ترحيل شفرة المصدر إلى TypeScript.

مرحبًا بالجميع ، لقد توليت منصب المشرف الرئيسي ولديّ كل إمكانية الوصول المطلوبة الآن 🎉 شكرًا جزيلًا لـ BridgeAR على كل العمل الذي أنجزه (ويقوم به) في هذه المكتبة وعلى السماح لي بتولي المهمة.

لقد أمضيت الأيام القليلة الماضية في الاستعداد للإصدار ، ومنذ بضع دقائق قمت بنشر الإصدار 3.0.0 إلى NPM ؛ https://github.com/NodeRedis/node-redis/releases/tag/v3.0.0 - والذي يتضمن هذا التغيير.

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

  • [x] تقديم المستندات وقواعد السلوك
  • [x] إعداد سياسة النفقات الجماعية والمساهمين

    • ستلاحظ الزر الجديد اللامع Sponsor في الجزء العلوي من GitHub ، لقد تقدمت أيضًا وقمت برعايته بنفسي ومن خلال شركتي للمساعدة في بدء تشغيله لأي مساهمين في المستقبل

  • العمل قيد التقدم: أتمتة الإصدار والإصدار الدلالي (النشر إلى NPM ، إنشاء سجلات التغيير ، إلخ)
  • [x] تحسين CI ، على سبيل المثال ، Windows CI بطيء للغاية ومتقشر في الوقت الحالي

بعد ذلك ، سأحول انتباهي إلى التحديث (على سبيل المثال ، الوعود ، الكتابة المطبوعة) وتصفية الديون الفنية في قاعدة بيانات Node Redis. لقد قام BridgeAR بالفعل بتحميل قارب من الأشياء لهذا الغرض ، إذا كنت فضوليًا تحقق من فرع WIP

تضمين التغريدة كنت أرغب في الحصول على وظيفة الوعود (أحب التخلي عن async-redis ) لكنني أفترض أن معظمها قد تم الآن. هل لديكم أي فكرة يا رفاق عن إطار زمني؟ هل تقبل المساهمات على هذا الصعيد (على سبيل المثال: هل لدينا نوع من قائمة المراجعة)؟

مرحبًا GCSBOSS ، تحقق من فرع 'v4' - إنه معمل إعادة البناء قيد التقدم ، والذي لديه دعم واعد ، لا يوجد أي إطار زمني / إطار زمني رغم أنه آسف حتى الآن

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

القضايا ذات الصلة

Atala picture Atala  ·  3تعليقات

betimer picture betimer  ·  5تعليقات

juriansluiman picture juriansluiman  ·  3تعليقات

strumwolf picture strumwolf  ·  4تعليقات

lemon707 picture lemon707  ·  3تعليقات