issue-wanted تطبيق Passion الذي يركز على تحسين مجتمع هاسكل مفتوح المصدر من خلال مركزية مشكلات GitHub عبر العديد من مستودعات Haskell في موقع واحد. تتمثل أهداف في issue-wanted في تسهيل المبرمجين من جميع مستويات المهارات لإيجاد مشاريع Haskell للمساهمة ، وزيادة عدد المساهمات في مشاريع Haskell مفتوحة المصدر ، وتشجيع المزيد من المبرمجين على أن يصبحوا جزءًا من مجتمع Haskell.
تم تنفيذ العمل الرئيسي في هذا المشروع خلال Google Summer of Code 2019. لأي شخص مهتم بتفاصيل كيفية تنفيذ issue-wanted ولماذا تم اتخاذ بعض خيارات التصميم ، تحقق من منشورات المدونة هذه:
ستحتاج إلى تثبيت ما يلي على نظامك من أجل إنشاء واختبار issue-wanted . انقر على الروابط لمعرفة كيفية تثبيت كل واحد:
libpq-dev : قم بتشغيل الأمر sudo apt install libpq-dev للتثبيت. مع تثبيت docker ، افتح محطة (تأكد من وجودك في الدليل issue-wanted ) وقم بتشغيل الأمر make postgres . سيؤدي هذا إلى إعداد قاعدة البيانات لك ويجب أن تكون مستعدًا للذهاب!
اتبع الإرشادات الموجودة تحت How to run server واختبار نقاط النهاية لمعرفة ما إذا تم إعداد كل شيء بشكل صحيح.
الرجوع إلى العدد رقم 81 إذا كنت لا تزال تواجه مشكلة.
لبناء المشروع ، افتح محطة في المجلد الأساسي والتشغيل
stack buildأو
cabal v2-buildإذا تم تغيير أي أنواع ، فيجب على المرء تحديث أنواع ELM التي تم إنشاؤها عن طريق التشغيل:
stack run generate-elmأو
cabal v2-run generate-elm لاختبار الخادم issue-wanted اتبع هذه الخطوات:
stack buildstack exec issue-wanted سيبدأ الخادم في التشغيل على http://localhost:8080/ .
نقاط النهاية المطلوبة بالمسألة المتاحة:
| نقطة النهاية | وصف |
|---|---|
/issues | يعيد جميع القضايا. |
/issues/:id | إرجاع مشكلة واحدة مع المعرف المقابل. |
/issues?label=<label name> | إرجاع قائمة من المشكلات مع التسمية المقابلة. |
نصيحة: إذا توقفت عن تشغيل الخادم ثم حاول إعادة تشغيله ، فقد تحتاج إلى تشغيل Command
fuser -n tcp -k 8080لتحرير المنفذ.
make postgres (سيتم تشغيل هذا الأمر قاعدة البيانات في حاوية Docker)stack test الجري الأول أو cabal new-test عند تحديث stack SNAPSHOT ، تحتاج إلى تحديث Dockerfile وفقًا لذلك ودفع صورة Docker الجديدة إلى Docker Hub. لا يمكن القيام بذلك إلا إذا كان لديك وصول إلى بيانات اعتماد الحساب.
تنفيذ الأوامر التالية:
docker build . -t kowainik/haskell-ci
docker push kowainik/haskell-ci
حاليا ، يتم تنفيذ الواجهة الأمامية باستخدام Elm .
elmnpmcreate-elm-app : لتثبيت تشغيل npm install -g [email protected] ملاحظة: يجب أن يتم جميع الإجراءات في مجلد frontend :
cd frontend/npm installelm-app startnpm run-script watch-css ستبدأ الواجهة الأمامية في http://localhost:3000/ .