سكرول هي تجميعه "ZK " للطبقه الثانيه مخصصه لتعزيز قابلية التوسع في عمله ال "الإيثريوم" من خلال ما يعادل دائره "bytecode" [zkEVM]" (https://github.com/scroll-tech/zkevm-circuits) . يشمل هذا ال "monorepo" مكونات البنية التحتية الأساسية لبروتوكول "Scroll". يحتوي على عقود L1 و L2، وعقدة تجميعيه، وعميل مثبت ، ومنسق مثبت.
├── bridge-history-api: خدمة تاريخ البريدج التي تجمع الإيداع وتسحب الأحداث من كل من سلسلة L1 و L2 وتولد أدلة السحب ├── common:المكتبات والأنواع المشتركة ├── coordinator: خدمة منسق البروفر التي ترسل مهام إثبات إلى البروفرز ├── database: عملاء قاعدة البيانات وتعريف المخطط ├── l2geth: "Scroll" نقطة تنفيذ ├── prover: عميل البروفر الذي يدير توليد إثبات لدائرة "zkEVM" ودائرة التجميع ├── rollup: "Rollup"-الخدمات ذات الصلة ب ├── rpc-gateway: "RPC" إعادة الشراء الخارجية للبوابة └── tests: اختبارات الدمج
نرحب بمساهمات المجتمع في هذا المستودع. قبل إرسال أي مشكلات أو علاقات عامة، يرجى قراءة كود الإجراء and the المبادئ التوجيهية للمساهمات.
- "Go" 1.19
- "Rust" (لل الإصدار, اذهب الي rust-toolchain)
- "Hardhat" / "Foundry"
- "Docker"
لإجراء الاختبارات، من الضروري أولاً سحب أو بناء صور "Docker" المطلوبة. نفذ الأوامر التالية في ملف الروت المستودع للقيام بذلك:
docker pull postgres
make dev_docker
قم بإجراء الاختبارات باستخدام الأوامر التالية:
go test -v -race -covermode=atomic scroll-tech/rollup/...
go test -tags="mock_verifier" -v -race -covermode=atomic scroll-tech/coordinator/...
go test -v -race -covermode=atomic scroll-tech/database/...
go test -v -race -covermode=atomic scroll-tech/common/...
لإجراء الإختبارات على اجهزه آبل ماك سيليكون، قم ببناء وتنفيذ صورة "Docker" على النحو المبين التالي:
استخدم الأمر التالي لبناء صورة "Docker"
make build_test_docker
هذا الأمر يبني صورة "Docker" تحت اسم scroll_test_image
استخدام "Dockerfile" الموجود على ./build/dockerfiles/local_test.Dockerfile
.
بعد بناء الصورة، قم بتشغيل "Docker Container" منها:
make run_test_docker
ذا الأمر يفعل Docker container اسمها scroll_test_container
من صوره. scroll_test_image
. ستخدم الحاوية الشبكة المضيفة ولديها إمكانية الوصول إلى مقبس "Docker" والملف الحالي
بمجرد تشغيل ال "Docker container" ، قم بتنفيذ الاختبارات باستخدام الأوامر التالية:
go test -v -race -covermode=atomic scroll-tech/rollup/...
go test -tags="mock_verifier" -v -race -covermode=atomic scroll-tech/coordinator/...
go test -v -race -covermode=atomic scroll-tech/database/...
go test -v -race -covermode=atomic scroll-tech/common/...
يمكنك العثور على اختبارات الوحدة في contracts/src/test/
, واختبارات الدمج في contracts/integration-test/
.
أذهب الي contracts
لمزيد من التفاصيل حول العقود.
تم ترخيص سكرول مونوريبو تحت رخصه MIT .