Celery: نسخة الإصدار 4.3 من الكرفس

تم إنشاؤها على ١٦ نوفمبر ٢٠١٨  ·  102تعليقات  ·  مصدر: celery/celery

thedrowgeorgepsarakis سيكون أمرا رائعا إذا تمكنا من الافراج عن النسخة التجريبية من 4.3 من 1 ديسمبر. قبل ذلك ، نحتاج إلى تحرير py-amqp. kombu والاعتمادات الأخرى أولاً على الرغم من ذلك. إنه تذكير ناعم

إذا كنت ترغب في المساهمة ، فإليك قائمة بأدوات الحظر .

إذا كنت تستخدم الكرفس لخلق منتج تجاري، يرجى النظر في أن تصبح لدينا مؤيد أو لدينا الراعي لضمان مستقبل الكرفس و.

Project Governance

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

مطلق سراحه! : تادا:

شكرا لكم جميعا على جهودكم ووقتكم ومهاراتكم.

الإصدار التالي ، Celery 5 هو شيء يستحق الإثارة.

ال 102 كومينتر

auvipythedrowgeorgepsarakis يمكن أن نطلق سريعة 4.2.2 فقط للقيود رديس؟ لأنه يتعارض حاليًا مع أحدث redis الذي يحتوي على تغييرات غير متوافقة

لست متأكدًا مما إذا كان لدي الوقت. سأحاول القيام بذلك.

يمكنني الإفراج هذه المرة ولكني بحاجة إلى بعض التعليمات الواضحة

سيكون GR8 حقًا الحصول على 4.2.2 بما في ذلك إصلاح تبعية redis ، لأنني قضيت الكثير من الوقت بالفعل للعثور على مصدر المشكلة ، وسيكون مفيدًا لأي شخص يقفز إليها!

هل سيدعم هذا الإصدار الجديد Python 3.7؟

نعم

هل سيدعم هذا الإصدار الجديد redis 3.0.1؟

نعم

auvipy ، thedrow ، أي شيء يمكنني المساعدة به لهذا الإصدار؟

المشكلة رقم 5212 حاسمة للإصدار.
ما زلنا بحاجة لاختبار الكرفس باستخدام Python 3.7.

thedrow يبدو أنه تم إصلاح # 5212 إذا قمنا بإصدار Kombu ، أليس كذلك؟
إذا كان هذا صحيحًا ، فنحن بحاجة إلى إضافة 3.7 اختبار إلى CI الخاص بنا. يمكنني العمل على ذلك.

إصدار py-amqp و kombu هو المتطلبات المسبقة ، بعد ذلك ، يمكنني تلميع العلاقات العامة الخاصة بي للحصول على دعم 3.7 لدمجها

auvipy تقصد هذا العلاقات العامة: https://github.com/celery/celery/pull/4859 ؟

لقد أصدرت Kombu 4.2.2 مع هذا الإصلاح فقط.
يجب أن يمر البناء الآن.

أي فكرة عن ETA لهذا الإصدار للإفراج؟

لا يزال هناك بعض العمل الذي يتعين القيام به. نحتاج إلى إصلاح بنية Kombu أيضًا.
سوف أتطرق إلى القضايا المتبقية.

thedrow أي مشكلة يمكنني
أم أنك ستدرج القضايا المتبقية هنا؟

xirdneh يمكنك التحقق من الإنجاز https://github.com/celery/celery/milestone/20 .

أعتقد أنه يمكننا إزالة غير الحاصرات من هذا المعلم. وتخفيف المشكلات المتبقية. الافراج عن py-amqp والحزم ذات الصلة للتحقق من كيفية عملها على الكرفس 4.3 rc1

في الوقت الحالي ، فشل إنشاء برنامج Master في Python 3.7.
انظر https://travis-ci.org/celery/celery/jobs/473236382.

thedrow أعتقد أن هذا يرجع إلى قيام Python 3.7 بتحويل StopIteration الاستثناءات التي تم رفعها في المولدات ، إلى استثناءات RuntimeError ، انظر هنا .

اقتراحي هو إضافة فرع معالجة استثناء ، واكتشاف النوع المحدد من RuntimeError :
https://github.com/celery/kombu/blob/e4dc1688a2bfe422813ffc79d9db50c06f38fbaf/kombu/asynchronous/hub.py#L348 -L359

except RuntimeError as e:
  if e.args != ('generator raised StopIteration',):
      raise e

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

هذا الإصلاح غير صحيح.
راجع https://github.com/celery/celery/blob/master/t/unit/worker/test_loops.py#L386
وفقًا لـ PEP 479 ، يجب أن تجمع المولدات StopIterator بعد الآن.

يجب إصلاح هذا في # 5263.

يبدو أننا اكتشفنا مشكلة أكثر خطورة وهو مانع في رأيي.
انظر https://travis-ci.org/celery/celery/jobs/473900629#L3204

نأمل أن يعمل https://github.com/celery/kombu/pull/972 على حل هذه المشكلة.

بنية kombu معطلة لذا لا تعمل مجموعة الاختبار بأكملها.
انظر https://travis-ci.org/celery/kombu/jobs/472712374#L1215.

لا يمكنني إعادة إنتاج فشل اختبار kombu محليًا :(

thedrow لقد أصلحت اختبارات https://github.com/celery/kombu/pull/978. كانت الاختبارات تستخدم مكتبة pyamqp من الماجستير. كسرت الاختبارات العلاقات العامة https://github.com/celery/py-amqp/pull/221.

ربما تكون الفاكهة المعلقة المنخفضة هي إصلاح الزوجين DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working

تم إصدار py-amqp 2.4.0 الآن.
التالي بدوره هو Kombu.

thedrow ما هو مفقود لإصدار 4.3؟ يبدو أن Kombu PR قد تم دمجها بالفعل - هل ننتظر إصدارًا جديدًا من Kombu؟ هل ننتظر إصلاحات لكل شيء في https://github.com/celery/celery/milestone/20؟

أحاول معرفة أين يمكنني المساعدة.

أحتاج إلى فرز المشكلات الحاسمة لـ Kombu 4.3.
أي شيء في https://github.com/celery/celery/issues؟q=is٪3Aopen+label٪3A٪22Status٪3A+Needs+Test+Coverage+٪E2٪9C٪98٪22+milestone٪3Av4.3 أو https://github.com/celery/kombu/pull/911 سيساعدك.
أعتقد أننا جاهزون تمامًا لإصدار Kombu لكني بحاجة إلى التحقق.
في غضون ذلك ، أعمل على ملاحظات الإصدار.

هل يمكننا أيضًا حل النزاع في # 5259؟

نظرًا لأنني لم أتمكن من تحرير الكرفس / kombu # 911 ، فتحت صفحة علاقات عامة جديدة: https://github.com/celery/kombu/pull/991

ونفس الشيء بالنسبة إلى # 5206. فتحت # 5289

حول هذه الأشياء StopIteration : في Kombu تم تغييره ليس "تحويل" ValueError إلى StopIteration https://github.com/celery/kombu/pull/972/ الملفات

ومع ذلك ، في الكرفس worker.loops.asynloop يتم اكتشاف خطأ StopIteration ويتم إنشاء حلقة جديدة في هذه الحالة. ألن يتسبب التغيير في الكومبو بدون تغيير في الكرفس في حدوث بعض المشكلات؟ لأنه الآن بدلاً من إنشاء حلقة جديدة ، يستمر استخدام الحلقة الحالية (ولكن المكسورة؟)؟

https://github.com/celery/celery/blob/c1d0bfea9ad98477cbc1def99157fe5109555500/celery/worker/loops.py#L92

larsrinn يرجى فتح مشكلة حول هذا الموضوع حتى لا ننسى النظر فيها.

أثناء كتابة التذكرة ، اكتشفت أنه لا يوجد إجراء مطلوب لأن العودة من المولد تؤدي إلى زيادة StopIteration . لا ينبغي تغيير السلوك الخارجي للكومبو الذي يعتمد عليه الكرفس هنا. انظر على سبيل المثال:

def len_generator(max_):
    a = 0

    while True:
        yield a
        a += 1
        if a == max_:
            return


g = len_generator(2)
print(next(g))  # 0
print(next(g))  # 1
print(next(g))  # raises StopIteration

يمر الاختبار الفاشل على CI لـ Python 3.7 أيضًا إذا تم تشغيله ضد فرع kombu الرئيسي. على الأقل بالنسبة لي محليًا. لذلك عندما يتم إصدار الإصدار الجديد من kombu ، يجب أن يجتاز الاختبار الفاشل في هذه الوظيفة: https://travis-ci.org/celery/celery/jobs/482062153

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

نعم ، أنا في انتظار ذلك أيضًا.

لكن يجب أن أقول إنني خائف قليلاً بشأن مستقبل الكرفس. تم إصدار Python 3.7 لمدة 7 أشهر بالفعل ولا يزال غير مدعوم. أعلم أن هذا المشروع يديره متطوعون ربما لديهم الكثير من الأشياء الأخرى للقيام بها. لكنني ساهمت في عدد من العلاقات العامة في الأسابيع الماضية ، وأضفت في الغالب تغطية اختبارية وحصلت على CI لاجتيازها. يبدو أنه لم يتم النظر إلى أي منها ، ناهيك عن دمجها ، على الرغم من أنها كلها صغيرة جدًا ، يجب أن تكون المراجعات قابلة للتنفيذ في بضع دقائق ، إن لم يكن حتى ثوانٍ. هذه تجربة مساهمة مخيبة للآمال للغاية.

سيكون تحسينًا كبيرًا للمشروع لعمل إصدارات أصغر بكثير. 4.3 هو إصدار كبير لا يزال بحاجة إلى العمل ، وفي الوقت نفسه يواجه العديد من المستخدمين مشكلات حرجة مثل تسرب الذاكرة الشديد ، والذي يمكن إصلاحه بسرعة في إصدار 4.2.X. حتى المساهمة في إصلاح معين ليس مفيدًا جدًا لأنه لن يتم إصداره لعدة أشهر.

larsrinn سأراجع العلاقات العامة الخاصة بك إذا كان لدي الوقت.

سيكون تحسينًا كبيرًا للمشروع لعمل إصدارات أصغر بكثير. 4.3 هو إصدار كبير لا يزال بحاجة إلى العمل ، وفي الوقت نفسه يواجه العديد من المستخدمين مشكلات حرجة مثل تسرب الذاكرة الشديد ، والذي يمكن إصلاحه بسرعة في إصدار 4.2.X. حتى المساهمة في إصلاح معين ليس مفيدًا جدًا لأنه لن يتم إصداره لعدة أشهر.

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

أنا بالتأكيد أتفق مع البيانات المذكورة أعلاه. دعم Python 3.7 هو أهم شيء بالنسبة لي الآن.

هل هناك خيار لإضافة مشرفين إضافيين؟

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

في رأيي ، يحتاج هذا المشروع لبدء برنامج رعاية ، تمامًا مثل Django و DRF. اجعل الشركات تدفع مقابل كل الأرباح التي تحققها بفضل هذا المشروع المذهل وامنح هذه الأموال للمطورين حتى يعملوا بدوام كامل في هذا المشروع.

الكرفس مكسور قليلاً ضد pytest الحالي (وحدة شائعة أخرى) ؛ # 5271 يصف المشكلة و # 5097 يصلحها. ربما إذا أصبح الإصدار 4.3 شاقًا للغاية ، فقد يؤدي ارتفاع الإصدار البسيط إلى 4.2.2 إلى ظهور العديد من الإصلاحات الأصغر (# 5271 وإصلاحات الأخطاء الأخرى)؟ أدرك أن قول هذا ربما يكون أسهل من فعله ، لكنه قد يسمح لمجموعة منا بالانضمام مرة أخرى إلى دورة الإصدار بدلاً من الحفاظ على مفترقاتنا الخاصة أثناء انتظار 4.3. شكرا لك على هذه الوحدة الممتازة.

إذن ما هي الشركات التي سترعى عملنا؟ هل هناك من يهمه الأمر؟ سأكون مهتمًا جدًا بالحصول على دعم بعض الشركات لوقتي للعمل مع الكرفس بدوام جزئي / بدوام كامل!

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

أود أن أضيف أيضًا ، بالنسبة لمشروعنا ، أن الكرفس هو الحاجز الوحيد الذي يمنعنا من الترقية إلى Python 3.7

رابط واحد مرتبط: https://tidelift.com/

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

أدرت حملة لجمع التبرعات وتحولت إلى فشل ذريع !! لدينا خيار رفع المد والجزر المفتوح في الملف التمهيدي. يمكن للأشخاص المهتمين التبرع / الرعاية هناك أو الاتصال بي مباشرة في بريدي الإلكتروني.

auvipy رأيت أن معظم المشكلات في المرحلة 4.3 تم نقلها أو إغلاقها الآن.
هل نخطط لإصدار 4.3 قريبًا؟

نعم!!! لأنها طال انتظارها !!

أنا عليه. توقع RC قريبًا جدًا.

أدرت حملة لجمع التبرعات وتحولت إلى فشل ذريع !! لدينا خيار رفع المد والجزر المفتوح في الملف التمهيدي. يمكن للأشخاص المهتمين التبرع / الرعاية هناك أو الاتصال بي مباشرة في بريدي الإلكتروني.

مؤلفو الكرفس. لقد أصبحت داعمًا من https://opencollective.com/celery. شكرا لك على أداتك الرائعة. أدواتك تساعدني كثيرًا :)

أي شخص يعترض على الاسم الرمزي 4.3 مثل راوند ؟
إنه أحد المسارات المفضلة لدي من Selected Ambient Works II.

إذا كان لديك أي اقتراحات أخرى ، يرجى تدوينها هنا.

أحبها :)

تم إصدار Kombu 4.3 الآن!

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

thedrow أين يتم تشغيل إصدار Windows؟ Appveyor؟

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

العلاقات العامة هنا https://github.com/celery/celery/pull/5329

إذن 4.3 هو جيد للذهاب الآن؟

أهلا! لقد أغلقت هذه المشكلة ، لكن الإصدار الموجود على pypi لا يزال 4.2.1. هل هناك مكان ما يمكننا تتبع الإصدار على pypi؟ شكرا.

مرحبا يا رفاق،

seirl أعتقد أنه تم إغلاق هذه المشكلة عن طريق الخطأ نظرًا لأن وصف # 5329 يحتوي على نص Fixes #5180 .

auvipy هل يمكنك إعادة فتح هذه المشكلة حتى لا يتم تحرير 4.3 فضلك؟
شكرا!

سيئتي ، اعتقدت أن الإغلاق التلقائي سيكون مجرد خيار للبكرة

تم إغلاق هذا تلقائيًا بواسطة GitHub !!!

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

لقد أوشكت على الانتهاء من سجل التغيير. لا يزال يتعين علي توضيح بعض العناصر وأحتاج إلى إكمال إضافة العناصر المتبقية التي لم أحصل عليها.

لا يزال قسم الجديد غير مكتمل إلى حد كبير.

لا تتردد في المساعدة بأي طريقة ممكنة.

لدينا أداة حظر محتملة لـ GA: https://github.com/celery/kombu/issues/1006
سيعمل المنسقون المقيمون على النحو المخطط له.
هل يمكن لأي شخص لديه وصول إلى تثبيت FreeBSD تصحيح هذا؟

مرحبا بالجميع. أي ETA؟

لقد انتهيت للتو من ملاحظات الإصدار لأول RC.
سيصدر اليوم.

هل لديك أي وقت متوقع للإصدار المستقر؟

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

تم تحرير RC1. : تادا:
يرجى تجربتها في بيئات التدريج الخاصة بك.

في غضون ذلك ، إذا كان بإمكان أي شخص إلقاء نظرة فاحصة على https://github.com/celery/kombu/issues/1006 و https://github.com/celery/kombu/issues/1007 و https: // github. com / celery / kombu / issue / 1004 وهي كلها انحدارات من Kombu 4.3 ، والتي ستساعدنا على الوصول إلى GA.

لقد أجريت إصلاحًا محتملاً لـ https://github.com/celery/kombu/issues/1007 في https://github.com/celery/kombu/pull/1009

نظرًا لأن https://github.com/celery/kombu/issues/1004 يبدو أنه في نفس المنطقة ، فقد حاولت إصلاحًا لذلك أيضًا: https://github.com/celery/kombu/pull/1010

كلاهما مدمج الآن.

lithammer شكرا لك!

نظرًا لأن هذا كان ممتعًا جدًا ، لم أحمل اقتراحًا واحدًا ، بل اقتراحين لحل المشكلة الأخيرة (https://github.com/celery/kombu/issues/1006):

أخذت استراحة قصيرة من ملاحظات الإصدار لكتابة https://github.com/celery/py-amqp/pull/258.
سأنتقل إلى مستند ما الجديد.

أصدرت Kombu 4.4 و Celery 4.3.0RC2.
ما لم يكن هناك أي اعتراض أو إصلاح حاسم ، فسيكون هذا آخر RC.

لقد أطلقت للتو py-amqp 2.4.3 أيضًا.
يقوم بإصلاح اثنين من الخلل الشديد في إلغاء التسلسل. لم أسمع أي شيء عنهم في الإنتاج.
ربما بسبب عدم وجود رسائل في بروتوكول AMQP مع صورتين نقطيتين متتاليتين.
الإصلاحات موجودة للتأكد من اكتمالها حيث أعتقد أنها يمكن أن تحطم الكرفس.

شكرا لك على العمل الرائعthedrow.

مانع محتمل لـ GA: https://github.com/celery/celery/issues/5371

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

xirdneh يرجى التحديث إذا لم تقم بذلك

lithammer إذا كنت ترغب في المساهمة أكثر ،

مانع محدد لـ GA: # 5377

لقد أكملت مستند ما الجديد الخاص بنا لهذا الإصدار.

يرجى مراجعته وإخباري إذا فاتني أي شيء.

thedrow يبدو شاملاً

لم أقم بإنشاء قائمة المساهمات حتى الآن.
سأفعل ذلك مباشرة قبل GA.

فيما يلي قائمة بأدوات حظر الإصدار الحالية:

المانعون المحتملون:

thedrow أعتقد أن https://github.com/celery/celery/issues/5383 صالح أيضًا.

لقد أصدرت للتو كرفس 4.3.0rc3.
يتضمن ذلك الميزات الجديدة وإصلاحات الأخطاء وبعض أدوات الحظر التي تم حلها.

هل تعرف متى ستتوفر النسخة الكاملة؟

عندما ننتهي من حل جميع الحواجز.

بقي مانع واحد فقط وأكثر من بعض مهام التوثيق النهائية.

thedrow يبدو أن الكرفس / kombu # 1014 قد تم إغلاقه بواسطة العلاقات العامة القائمة على العودة. ومع ذلك ، فإنه لا يظهر على أنه مكتمل في قائمة التحقق. هل هو غير مكتمل لأن الكلمة الرئيسية unique لا تزال بحاجة إلى الدعم؟

نعم فعلا. سأفعل ذلك ومهام التوثيق النهائية غدًا.

مطلق سراحه! : تادا:

شكرا لكم جميعا على جهودكم ووقتكم ومهاراتكم.

الإصدار التالي ، Celery 5 هو شيء يستحق الإثارة.

أريد أن أبدأ بإزالة python2 من Master

هل يمكنني معرفة متى سيتم إطلاق سراح الكرفس 5؟ أنا متحمس حقًا لاستخدام ذلك.

ربما في بعض الأوقات قبل عيد الميلاد :)

auvipy هل يمكنك إصدار

نعم بالطبع ، بدأ kast ng = ight لكنه مشغول. ستكتمل بحلول اليوم.

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