DUNE(1) Dune Manual DUNE(1)

dune - سیستم ساخت ترکیب‌پذیر برای OCaml

dune build [--watch]

dune runtest [--watch]

dune exec NAME

dune utop [DIR]

dune install

dune init project NAME [PATH] [--libs=l1,l2 --ppx=p1,p2 --inline-tests]

ابزار Dune یک سیستم ساخت است که منحصراً برای پروژه‌های OCaml طراحی شده است. این ابزار بر ارائه یک تجربه کاربری یکپارچه تمرکز دارد و بیشتر جزئیات سطح پایین کامپایل OCaml را مدیریت می‌کند. تنها کاری که باید انجام دهید ارائه توصیفی از پروژه‌تان است و Dune بقیه کارها را انجام خواهد داد.

طرحی که این ابزار پیاده‌سازی می‌کند از ساختار مورداستفاده در Jane Street الهام گرفته شده و با دنیای متن‌باز سازگار گردیده است. این سیستم در طول زمانی دراز به بلوغ رسیده است و روزانه توسط صدها توسعه‌دهنده استفاده می‌شود، که نشان‌دهنده آزمودگی بالا و کارآمدی آن است.

نام مستعاری برای env.
نام مستعاری برای promotion apply.
نام مستعاری برای runtest.

ساخت اهداف داده‌شده، یا اهداف پیش‌فرض در صورت عدم تعیین هدف.
مدیریت حافظه پنهان (cache) اشتراکی Dune برای دست‌ساخته‌های ساخت.
پاکسازی پروژه.
توصیف فضای کاری (workspace).
واکشی و بازگرداندن خطاها از ساخت جاری.
اجرای یک دستور در محیطی مشابه با حالتی که عملیات نصب انجام شده باشد.
به dune describe external-lib-deps منتقل شده است.
قالب‌بندی کد منبع.
قالب‌بندی فایل‌های dune.
راهنمای تکمیلی Dune.
گروه دستورات برای مقداردهی اولیه مؤلفه‌های Dune.
نصب بسته‌های تعریف‌شده در فضای کاری.
چاپ کتابخانه‌های نصب‌شده روی سیستم.
اتصال به یک کارساز Dune RPC و نظارت بر آن.
گروه دستورات مرتبط با OCaml.
راه‌اندازی یک کارساز پیکربندی merlin.
مدیریت بسته آزمایشی
مدیریت بسته آزمایشی
کنترل چگونگی انتشار مجدد تغییرات به کد منبع.
گروه دستورات مرتبط با Rocq.
سازوکار RPC ابزار Dune. آزمایشی.
تخلیه (dump) قوانین.
اجرای آزمون‌ها.
گروه دستورات برای نمایش اطلاعات درباره فضای کاری
لغو و خاموش کردن فرآیندهای ساخت در فضای کاری جاری.
جایگزینی نشانه‌ها (watermarks) در فایل‌های منبع.
گروه دستورات برای ابزارهای بسته‌بندی‌شده.
چاپ فهرستی از دستورالعمل‌های toplevel برای گنجاندن دایرکتوری‌ها و بارگذاری فایل‌های cma.
دستوراتی برای مشاهده رد وقایع (event trace) ابزار dune
حذف بسته‌های تعریف‌شده در فضای کاری.
ارتقای پروژه‌ها بین نسخه‌های اصلی Dune.
بارگذاری کتابخانه در utop.

این گزینه‌ها بین تمامی دستورات مشترک هستند.

--help[=FMT] (default=auto)
نمایش این راهنما در قالب FMT. مقدار FMT باید یکی از auto، pager، groff یا plain باشد. با انتخاب auto، چنانچه متغیر محیطی TERM برابر با dumb یا تعریف‌نشده باشد، قالب به صورت pager یا plain خواهد بود.
--version
نمایش اطلاعات نسخه.

برای راهنمایی درباره یک دستور مشخص از `dune COMMAND --help' استفاده کنید.

dune با این مقادیر خارج می‌شود:

0
در صورت موفقیت.
1
در صورت بروز خطا.
130
در صورتی که توسط یک سیگنال متوقف شود.

این متغیرهای محیطی بر اجرای dune تأثیر می‌گذارند:

اگر مقداری غیر از 0 داشته باشد، رنگ‌های ANSI پشتیبانی می‌شوند و زمانی که برنامه به دستور دیگری لوله‌کشی (pipe) نشده باشد، باید استفاده شوند. اگر برابر با 0 باشد، کدهای فرار رنگی ANSI در خروجی درج نمی‌شوند
اگر مقداری غیر از 0 داشته باشد، رنگ‌های ANSI تحت هر شرایطی باید فعال شوند.
در صورت تنظیم، مکان تمام حافظه‌های پنهان مختلف مورداستفاده dune را مشخص می‌کند.

گزارش‌های باگ را در https://github.com/ocaml/dune/issues بررسی کنید

1.
مقداردهی اولیه یک پروژه جدید به نام `foo':
dune init project foo
2.
ساخت تمام اهداف در درخت منبع جاری:
dune build
3.
اجرای فایل اجرایی به نام `bar':
dune exec bar
4.
اجرای تمام آزمون‌ها در درخت منبع جاری:
dune runtest
5.
نصب تمام مؤلفه‌های تعریف‌شده در پروژه:
dune install
6.
حذف تمام دست‌ساخته‌های ساخت:
dune clean
Dune 3.24.2