وpyramid_tm هو وحدة بيثون الذي يسمح طلبات الهرم للانضمام الى المعاملات النشطة على النحو المنصوص عليه حزمة المعاملة.
انظر http://docs.pylonsproject.org/projects/pyramid_tm/dev/ أو مستندات / index.rst في هذا التوزيع للوثائق مفصلة
ما هو الجديد في هذا الإصدار:.
عندما أثير استثناء غير retryable نتيجة دعوة للtransaction.manager.commit، لم reraised استثناء صحيح. أعراض: استثناء غير قابل للاسترداد مثل غير مدعوم: تخزين النقط في غير معتمد. سيتم ابتلع بشكل غير لائق.
ما هو الجديد في الإصدار 0.4:
علة المآزق:
عمل حول عدم إعادة المحاولة ConflictError بشكل صحيح في ارتكاب الوقت من قبل 1.2.0 حزمة المعاملة. انظر https://mail.zope.org/pipermail/zodb-dev/2012-March/014603.html لمزيد من التفاصيل.
الاختبار:
لم يعد اختبارها تحت بيثون 2.5 من tox.ini (وبالتالي لم يعد اختبار أقل من 2.5 من قبل الملقم أبراج جينكينز). حزمة قد لا تزال تعمل تحت 2.5، ولكن الاختبارات الآلي لم تعد تظهر الكسر عندما يتغير بطرق كسر 2.5 الدعم.
تحذيرات اسكواش اختبار انتقاص تحت بيثون 3.2.
ما هو الجديد في الإصدار 0.3:
الميزات:
وقد تم تحويل إدارة المعاملات إلى هرم 1.2 و مثل؛ توين ومثل. (بدلا من المشتركين الحدث). سيتم سدد مباشرة ومثل، ومثل أدناه. سوف معالج رأي استثناء، وهذا يعني أن يكون لديها فرصة لمعالجة الاستثناءات قبل انقلابهم في الاستجابات. وهذا يعني أنه من الأفضل إلى & مثل، ورفع HTTPFound (...) ومثل. وبدلا من مثل؛ عودة HTTPFound (...) ومثل؛ إذا كنت تريد استثناء HTTP لإحباط العملية.
فإن إدارة المعاملات الآن إعادة المحاولة استثناءات retryable (مثل خطأ تعارض ZODB) إذا تم تكوين pyramid.attempts أن يكون أكثر من الافتراضي 1. راجع قسم إعادة المحاولة من الوثائق.
بيثون 3.2 التوافق (يتطلب الهرم 1.3dev +).
إلى الوراء عدم التوافق:
غير متوافق مع الهرم العلامة & lt؛ 1.2a1. استخدام pyramid_tm النسخة 0.2 إذا كنت بحاجة إلى التوافق مع تثبيت الهرم الأكبر سنا.
لم يعد تكوين default_commit_veto ارتكاب الفيتو رد في النظام افتراضيا. استخدام tm.commit_veto = pyramid_tm.default_commit_veto في إعدادات نشر لإضافته. هذا هو لالتكافؤ مع repoze.tm2، والتي لا تكوين في ارتكاب الفيتو افتراضيا سواء.
وdefault_commit_veto لم يعد بالتحقق من وجود رأس X-TM-إحباط عند محاولة معرفة ما إذا كان ينبغي إحباط الصفقة (على الرغم من أنه لا يزال يتحقق من رأس X-TM). استخدام نسخة 0.2 أو العرف ارتكاب ظيفة الفيتو إذا كان التطبيق الخاص بك يعتمد على رأس X-TM-إحباط.
يطلق على ارتكاب الفيتو الآن مع اثنين من الحجج: طلب والاستجابة لها. الطلب هو طلب webob التي تسببت في إدارة المعاملات لتصبح نشطة. الاستجابة هي استجابة عاد من تطبيق الهرم. هذا التوقيع دعوة غير متوافق مع الإصدارات القديمة. التوقيع دعوة من pyramid_tm 0.2 فما فوق ارتكاب الفيتو قبول ثلاث حجج: البيئى، والوضع، ورؤوس. إذا كنت تستخدم وظيفة commit_veto العرف، وسوف تحتاج إلى أي وظيفة تحويل الموجودة لديك لاستخدام اصطلاح استدعاء جديدة أو استخدام المجمع لجعلها متوافقة مع اتفاقية الاتصال الجديدة. وهنا وظيفة المجمع البسيطة (bwcompat_commit_veto_wrapper) التي تسمح لك لاستخدام المخصصة الموجودة لديك وظيفة ارتكاب الفيتو:
bwcompat_commit_veto_wrapper مواطنه (طلب والاستجابة):
العودة my_custom_commit_veto (request.environ، response.status،
response.headerlist)
الإستنكار:
والآن مكتوبة إعداد تكوين pyramid_tm.commit_veto بشكل قانوني كما tm.commit_veto. وسوف تستمر الإملائي السن للعمل، ولكن قد يثير الخطأ انتقاص عند استخدامها.
ما هو الجديد في الإصدار 0.2.1:
إصلاح MANIFEST.in على ويندوز (زائدة مائلة غير مسموح بها).
التغييرات tox.ini طفيفة.
ما هو الجديد في الإصدار 0.2:
ورأس جديد `` تتشرف X-Tm`` الآن من ورطتها `` ارتكاب default_commit_veto`` حق النقض. في حالة وجود هذا الرأس في headerlist، يجب أن تكون قيمته سلسلة. إذا قيمتها `` commit``، سيتم تسليم المعاملة بغض النظر عن قانون الأحوال أو قيمة `` X-TM-Abort``. إذا كانت قيمة `` رأس X-Tm`` هي `` abort`` (أو أي قيمة سلسلة أخرى باستثناء `` commit``)، سيتم إحباط هذه الصفقة، بغض النظر عن قانون الأحوال أو قيمة `` X-TM-Abort``.
المتطلبات:
بيثون
لم يتم العثور على التعليقات