| DUNE-UTOP(1) | Dune Manual | DUNE-UTOP(1) |
نام (NAME)
dune-utop - بارگذاری کتابخانه در utop
خلاصه دستور (SYNOPSIS)
dune utop [OPTION]… [DIR] [ARGS]…
توضیحات (DESCRIPTION)
دستور dune utop DIR مفسر سطحبالای utop را همراه با کتابخانههای تعریفشده در DIR ساخته و اجرا میکند.
گزینهها (OPTIONS)
- --action-stderr-on-success=VAL
- مشابه --action-stdout-on-success، اما بهجای خروجی استاندارد برای خطای استاندارد اعمال میشود. یک پیشفرض مناسب برای مخازن بزرگ تکمخزنی (monorepo) عبارت است از --action-stdout-on-success=swallow --action-stderr-on-success=must-be-empty. این کار تضمین میکند که یک ساخت موفق خروجی خالی و «پاکیزه» داشته باشد.
- --action-stdout-on-success=VAL
- نحوه برخورد با خروجی استاندارد کنشها در صورت موفقیتآمیز بودن آنها را مشخص میکند. مقادیر ممکن عبارتند از: print برای چاپ ساده در خروجی Dune، swallow برای نادیده گرفتن کامل آن و must-be-empty برای الزام به اینکه کنش چیزی چاپ نکرده باشد. با مقدار must-be-empty، اگر کنش چیزی در خروجی استاندارد خود چاپ کرده باشد، Dune آن را ناموفق تلقی خواهد کرد. پیشفرض print است.
- --build-info
- نمایش اطلاعات ساخت.
- --context=CONTEXT (absent=default)
- انتخاب بافتی (context) که utop در آن ساخته/اجرا میشود.
- --display-separate-messages
- جداسازی پیامهای خطا با یک خط خالی.
- --error-reporting=VAL (absent=deterministic)
- زمان گزارش خطاهای ساخت را کنترل میکند. مقدار early خطاها را به محض شناسایی گزارش میدهد. مقدار deterministic خطاها را در پایان ساخت و با ترتیبی معین گزارش میکند. مقدار twice هر خطا را دوبار گزارش میدهد: یک بار به محض شناسایی و بار دیگر در پایان ساخت با ترتیبی معین.
- -f, --force
- اجبار به اجرای مجدد کنشهای مرتبط با نامهای مستعار (aliases)، حتی اگر وابستگیهای آنها تغییری نکرده باشد.
- --file-watcher=VAL (absent=automatic)
- سازوکار تشخیص تغییرات در مبدأ کد. مقدار Automatic باعث میشود dune برای تشخیص تغییرات یک برنامه خارجی را اجرا کند. مقدار Manual امکان میدهد تا تغییر فایلها بهطور دستی به dune اطلاع داده شود.
- --passive-watch-mode
- مشابه [--watch]، اما ساخت را تنها زمانی آغاز میکند که از طریق یک فراخوانی RPC از خارج به آن دستور داده شود.
- --sandbox=VAL (absent DUNE_SANDBOX env)
- تنظیم حالت قرنطینهسازی (sandboxing). برخی کنشها به حالت قرنطینهسازی خاصی نیاز دارند، بنابراین این تنظیم را نادیده خواهند گرفت. مقادیر مجاز عبارتند از: none، symlink، copy، hardlink.
- --stop-on-first-error
- متوقف کردن ساخت به محض برخورد با نخستین خطا.
- -w, --watch
- بهجای پایان دادن به فرآیند ساخت پس از اتمام، بهطور مداوم منتظر تغییرات فایلها میماند.
- --wait-for-filesystem-clock
- ابزار Dune محتوای فایلها را برای بهبود فرآیند ساخت افزایشی خلاصهسازی (digest) میکند. این چکیدهها خودشان کَش میشوند. در برخی موارد، برای اطمینانپذیری فرآیند، Dune نیاز دارد تا برخی از مدخلهای حافظه پنهان چکیده را دور بیندازد. این گزینه Dune را وادار میکند تا برای پیشروی ساعت سیستمفایل منتظر بماند تا نیازی به دور ریختن هیچ موردی نباشد. احتمالاً نیازی به توجه به این گزینه نخواهید داشت؛ این گزینه بیشتر برای توسعهدهندگان Dune جهت بازتولیدپذیرتر کردن آزمونهای حافظه پنهان چکیده کاربرد دارد.
گزینههای عمومی (COMMON OPTIONS)
این گزینهها میان تمامی دستورها مشترک هستند.
- --always-show-command-line
- همیشه خط فرمان کامل برنامههای اجرا شده توسط dune را نمایش میدهد.
- --auto-promote
- ارتقای خودکار فایلها. این گزینه مشابه اجرای dune promote پس از ساخت است.
- --build-dir=FILE (absent DUNE_BUILD_DIR env)
- دایرکتوری ساخت مشخصشده. در صورت مشخص نشدن، پیشفرض _build است
- --cache=VAL (absent DUNE_CACHE env)
- فعال یا غیرفعال کردن حافظه پنهان Dune (یکی از مقادیر disabled، enabled-except-user-rules یا enabled). پیشفرض `enabled-except-user-rules' است.
- --cache-check-probability=VAL (absent DUNE_CACHE_CHECK_PROBABILITY env)
- بررسی بازتولیدپذیری ساخت با اجرای مجدد قواعد تصادفی انتخابشده و مقایسه نتایج آنها با مقادیر ذخیرهشده در حافظه پنهان Dune. نکته: با افزایش احتمال این بررسیها سرعت ساخت را کاهش میدهید. احتمال پیشفرض صفر است، یعنی هیچ قاعدهای بررسی نمیشود.
- --cache-storage-mode=VAL (absent DUNE_CACHE_STORAGE_MODE env)
- حالت ذخیرهسازی حافظه پنهان Dune (یکی از مقادیر auto، hardlink یا copy). پیشفرض `hardlink' است.
- --config-file=FILE
- بارگذاری این فایل پیکربندی بهجای فایل پیشفرض.
- --debug-backtraces
- همیشه ردگیری بازگشتی (backtrace) استثناها را چاپ میکند.
- --debug-dependency-path
- در صورت بروز خطا، مسیر وابستگی از هدفهای خط فرمان تا قاعدهای که شکست خورده است چاپ میشود.
- --debug-package-logs (absent DUNE_DEBUG_PACKAGE_LOGS env)
- هنگام ساخت بستهها همیشه گزارشهای استاندارد چاپ شوند
- --default-target=TARGET (absent=@@default)
- تنظیم هدف پیشفرضی که در صورت مشخص نشدن به dune build داده میشود.
- --diff-command=VAL (absent DUNE_DIFF_COMMAND env)
- دستور شل برای مقایسه فایلها (diff). از - برای غیرفعال کردن چاپ تفاوتها استفاده کنید.
- --disable-promotion (absent DUNE_DISABLE_PROMOTION env)
- غیرفعال کردن تمام قواعد ارتقا
- --display=MODE
- کنترل حالت نمایش Dune. برای جزئیات بیشتر به dune-config(5) مراجعه کنید. مقادیر مجاز برای این گزینه عبارتند از: progress، verbose، short، quiet یا tui.
- --dump-gc-stats=FILE
- تخلیه آمار بازیافت حافظه (garbage collector) در یک فایل پس از تکمیل ساخت.
- --help[=FMT] (default=auto)
- نمایش این راهنما در قالب FMT. مقدار FMT باید یکی از مقادیر auto، pager، groff یا plain باشد. با مقدار auto، در صورتی که متغیر محیطی TERM برابر با dumb بوده یا تعریف نشده باشد، قالب برابر با pager یا plain خواهد بود.
- --ignore-promoted-rules
- نادیده گرفتن قواعد دارای (mode promote)، بهجز مواردی با (only ...). متغیر %{ignoring_promoted_rules} در فایلهای dune مشخص میکند که این گزینه مشخص شده است یا خیر.
- --instrument-with=BACKENDS (absent DUNE_INSTRUMENT_WITH env)
- فعالسازی ابزارسازی (instrumentation) توسط BACKENDS. مقدار BACKENDS فهرستی از نامهای کتابخانه جداشده با کاما است که هرکدام باید یک پشتیبان ابزارسازی را اعلان کنند.
- -j JOBS (absent DUNE_JOBS env)
- عدم اجرای بیش از JOBS دستور بهطور همزمان. مقدار JOBS باید یک عدد صحیح مثبت یا auto برای تشخیص خودکار تعداد هستهها (پیشفرض) باشد.
- --no-buffer
- عدم بافر کردن خروجی دستورهای اجراشده توسط dune. بهطور پیشفرض، dune خروجی زیردستورها را بافر میکند تا در صورت اجرای موازی چند دستور، از درهمآمیختگی خروجی جلوگیری شود. اما این امر میتواند هنگام عیبیابی آزمونهای زمانبر مشکلساز باشد. با گزینه --no-buffer، دستورها دسترسی مستقیم به ترمینال خواهند داشت. توجه داشته باشید که در نتیجه خروجی آنها در فایل گزارش ضبط نخواهد شد. باید از این گزینه در کنار -j 1 استفاده کنید تا از تداخل جلوگیری شود. علاوه بر این، باید از --verbose نیز استفاده کنید تا مطمئن شوید دستورها پیش از اجرا چاپ میشوند.
- --no-config
- عدم بارگذاری فایل پیکربندی
- --no-print-directory
- جلوگیری از نمایش پیامهای «Entering directory».
- --only-packages=PACKAGES
- نادیده گرفتن بندهایی (stanzas) که به بستهای ارجاع میدهند که در PACKAGES نیست. مقدار PACKAGES فهرستی از نامهای بستهها است که با کاما از هم جدا شدهاند. توجه داشته باشید که این کار تأثیری مشابه حذف بندهای مربوطه از فایلهای dune دارد. این گزینه عمدتاً برای انتشار نسخهها کاربرد دارد. در طول توسعه، احتمالاً آنچه میخواهید ساخت یک هدف خاص <package>.install است.
- -p PACKAGES, --for-release-of-packages=PACKAGES (required)
- کوتاهنوشتی برای --release --pkg=disabled --only-packages PACKAGE. باید از این گزینه در فایلهای <package>.opam خود استفاده کنید تا در شرایطی که پروژه شامل چندین بسته است تنها موارد لازم ساخته شوند و ساختهای بازتولیدپذیر حاصل گردد.
- --pkg=VAL
- فعال یا غیرفعال کردن مدیریت بستهها. رفتار پیشفرض بستگی به وجود یا عدم وجود دایرکتوری قفل (lock) دارد.
- --profile=VAL (absent DUNE_PROFILE env)
- انتخاب نمایه (profile) ساخت، به عنوان مثال dev یا release. مقدار پیشفرض dev است.
- --promote-install-files[=VAL] (default=true)
- ارتقای تمامی فایلهای <package>.install تولیدشده به درخت مبدأ.
- --release
- قرار دادن dune در یک حالت بازتولیدپذیر release. کوتاهنوشتی برای --root . --ignore-promoted-rules --no-config --profile release --always-show-command-line --promote-install-files --require-dune-project-file --default-target @install. باید از این گزینه برای ساختهای انتشار استفاده کنید. به عنوان مثال، باید از این گزینه در فایلهای <package>.opam خود استفاده نمایید. مگر اینکه از قبل از -p استفاده کرده باشید، زیرا -p دربردارنده این گزینه است.
- --require-dune-project-file[=VAL] (default=true)
- در صورت مفقود بودن فایل dune-project با خطا مواجه شود.
- --root=DIR (absent DUNE_ROOT env)
- استفاده از این دایرکتوری به عنوان ریشه فضای کاری بهجای حدس زدن آن. توجه داشته باشید که این گزینه تفسیر هدفهای ارائهشده در خط فرمان را تغییر نمیدهد. این گزینه فقط برای اسکریپتها در نظر گرفته شده است.
- --store-orig-source-dir (absent DUNE_STORE_ORIG_SOURCE_DIR env)
- ذخیره مکان اصلی مبدأ در فرادادههای dune-package.
- --target-exec=TOOLCHAIN=CMD (absent DUNE_TARGET_EXEC env)
- دستور بستهبند برای اجرای باینریهای مقصد در هنگام کامپایل متقاطع. قالب: TOOLCHAIN=CMD (برای مثال: 'windows=wine').
- --terminal-persistence=MODE
- تغییر نحوه نمایش گزارش نتایج ساخت در کنسول بین ساختهای مجدد در حالت --watch. حالتهای پشتیبانیشده: preserve، clear-on-rebuild، clear-on-rebuild-and-flush-history.
- --trace-file=FILE
- خروجی دادههای ردگیری (trace) در قالب catapult (سازگار با chrome://tracing).
- --verbose
- مشابه --display verbose
- --version
- نمایش اطلاعات نسخه.
- --watch-exclusions=REGEX
- افزودن یک عبارت باقاعده POSIX که دایرکتوریهای منطبق را از `dune build --watch` مستثنی میکند. گزینه --watch-exclusions را میتوان برای افزودن چندین مورد استثنا تکرار کرد. از نقطه-ویرگول (;) نیز میتوان به عنوان جداکننده استفاده کرد. اگر هیچ استثنایی ارائه نشود، مجموعهای استاندارد از استثناها به کار گرفته میشود؛ با این حال، اگر از یک یا چند گزینه --watch-exclusions استفاده شود، هیچیک از استثناهای استاندارد اعمال نخواهند شد. استثناهای استاندارد عبارتند از: ^_opam /_opam ^_esy /_esy ^\.#.* /\.#.* ~$ ^#[^#]*#$ /#[^#]*#$ ^4913$ /4913$ /.git /.hg :/windows
- --workspace=FILE (absent DUNE_WORKSPACE env)
- استفاده از این فایل فضای کاری مشخص بهجای جستجوی آن.
- -x VAL (absent DUNE_CROSS_TARGET env)
- کامپایل متقاطع با استفاده از این زنجیرهابزار.
راهنمایی بیشتر (MORE HELP)
برای دریافت راهنما در مورد یک دستور خاص از `dune COMMAND --help' استفاده کنید.
وضعیت خروج (EXIT STATUS)
دستور dune utop با این مقادیر پایان مییابد:
- 0
- در صورت موفقیت.
- 1
- در صورت بروز خطا.
- 130
- در صورتی که توسط یک سیگنال متوقف شود.
محیط (ENVIRONMENT)
این متغیرهای محیطی بر اجرای utop تأثیر میگذارند:
- DUNE_BUILD_DIR
- دایرکتوری ساخت مشخصشده. در صورت مشخص نشدن، پیشفرض _build است
- DUNE_CACHE
- فعال یا غیرفعال کردن حافظه پنهان Dune (یکی از مقادیر disabled، enabled-except-user-rules یا enabled). پیشفرض `enabled-except-user-rules' است.
- DUNE_CACHE_CHECK_PROBABILITY
- بررسی بازتولیدپذیری ساخت با اجرای مجدد قواعد تصادفی انتخابشده و مقایسه نتایج آنها با موارد ذخیرهشده در حافظه پنهان Dune. نکته: افزایش احتمال این بررسیها سرعت ساخت را کاهش میدهد. احتمال پیشفرض صفر است، یعنی هیچ قاعدهای بررسی نمیشود.
- DUNE_CACHE_STORAGE_MODE
- حالت ذخیرهسازی حافظه پنهان Dune (یکی از مقادیر auto، hardlink یا copy). پیشفرض `hardlink' است.
- DUNE_CROSS_TARGET
- کامپایل متقاطع با استفاده از این زنجیرهابزار.
- DUNE_DEBUG_PACKAGE_LOGS
- هنگام ساخت بستهها همیشه گزارشهای استاندارد چاپ شوند
- DUNE_DIFF_COMMAND
- دستور شل برای مقایسه فایلها (diff). از - برای غیرفعال کردن چاپ تفاوتها استفاده کنید.
- DUNE_DISABLE_PROMOTION
- غیرفعال کردن تمام قواعد ارتقا
- DUNE_INSTRUMENT_WITH
- فعالسازی ابزارسازی توسط BACKENDS. مقدار BACKENDS فهرستی از نامهای کتابخانه جداشده با کاما است که هرکدام باید یک پشتیبان ابزارسازی را اعلان کنند.
- DUNE_JOBS
- عدم اجرای بیش از JOBS دستور بهطور همزمان. مقدار JOBS باید یک عدد صحیح مثبت یا auto برای تشخیص خودکار تعداد هستهها (پیشفرض) باشد.
- DUNE_PROFILE
- نمایه ساخت. در صورت مشخص نشدن برابر با dev، یا در صورت تنظیم بودن -p برابر با release است.
- DUNE_ROOT
- استفاده از این دایرکتوری به عنوان ریشه فضای کاری بهجای حدس زدن آن. توجه داشته باشید که این گزینه تفسیر هدفهای ارائهشده در خط فرمان را تغییر نمیدهد. این گزینه فقط برای اسکریپتها در نظر گرفته شده است.
- DUNE_SANDBOX
- حالت قرنطینهسازی پیشفرض مورد استفاده. (به --sandbox مراجعه کنید)
- DUNE_STORE_ORIG_SOURCE_DIR
- ذخیره مکان اصلی منبع در فرادادههای dune-package.
- DUNE_TARGET_EXEC
- دستور بستهبند برای اجرای باینریهای مقصد هنگام کامپایل متقاطع. قالب: TOOLCHAIN=CMD (برای مثال: 'windows=wine').
- DUNE_WORKSPACE
- استفاده از این فایل فضای کاری مشخص بهجای جستجوی آن.
گزارش باگها (BUGS)
گزارشهای باگ را در https://github.com/ocaml/dune/issues بررسی کنید.
همچنین ببینید (SEE ALSO)
dune-top(1)
| Dune 3.24.2 |