इस प्रोजेक्ट के बारे में

Dotflow निष्पादन पापलाइन बनाने के लिए एक हल्की पायथन लाइब्रेरी है। उपयोगकर्ता @action डेकोरेटर के माध्यम से कार्यों को परिभाषित करते हैं, उन्हें DotFlow.task.add() से श्रृंखलाबद्ध करते हैं, और start() को कॉल करके वर्कफ़्लो चलाते हैं। यह अंतर्निहित रेज़िलिएंस सुविधाएँ प्रदान करता है, जिनमें रि्राई, टाइमआउट, एक्सपोनेंशियल बैकऑफ़, और विल वर्कफ़्लो के लिए चेकपॉइंट-आधारित रि़्यूम शामिल हैं। यह चार आउट-ऑफ़-द-बॉक्स निष्पादन मोड का समर्थन करता है: अनुक्रमिक (डिफ़ॉल्ट), बैकग्राउंड (नॉन-ब्लॉकिंग थ्रेड), समानांतर (सभी कार्य एक साथ चलते हैं), और समानांतर समूह (समूह समानांतर में चलते हैं जबकि समूह के भीतर कार्य अनुक्रमिक रूप से चलते हैं)। लाइब्रेरी OpenTelemetry (ट्रेस, मेट्रिक्स, संरचित लॉग) और Sentry (त्रुटि ट्रैकिंग, प्रदर्शन निरानी) के साथ अंतर्िहित ऑब्ज़र्वेबिलिटी एकीकरण प्रदान करती है। इसमें स्टोरेज (डिफ़ॉल्ट रूप से इन-मेमोरी, फ़ाइल सिस्टम, AWS S3, Google Cloud Storage), सूचनाँ (Telegram, Discord), शेड्यूलिंग (क्रॉन के साथ ओवरलैप रणनीतियाँ जैसे skip, queue, parallel), और रिमोट सर्वर रिपोर्टिंग के लिए एक प्लग करने योग्य प्रोवाइडर प्रणाली शामिल है। यह async टास्क फ़ंक्शन, क्लास-आधारित स्टेप परिभाषाएँ, टास्क और वर्कफ़्लो कॉलबैक, और कॉन्फ़िर करने योग्य त्रुटि प्रबंधन (पहली विफलता पर रोकें या शेष कार्यों को निष्पादित करना जारी रखें) का भी समर्थन करती है। Dotflow वर्कफ़्लो को अतिरिक्त कोड लिखे बिना चलाने, शेड्यूल करने और प्रबंधित करने के लिए एक CLI प्रदान करता है, और AWS Lambda, AWS ECS Fargate, Google Cloud Run, Alibaba Cloud Function Compute, Kubernetes, Docker, और GitHub Actions सहित 34+ क्लाउड प्लेटफ़ॉर्म पर एक-कमांड तैनाती का समर्थन करता है। उपयोगकर्ता स्टोरेज, लॉगिंग, ट्रेसिंग, मेट्रिक्स और अन्य क्षमताओं के लिए अमूर्त आधार वर्गों के माध्यम से कस्टम प्रोवाइडर लागू करके इसकी कार्यक्षमता का विस्तार कर सकते हैं।