| DUNE-SHUTDOWN(1) | Dune Manual | DUNE-SHUTDOWN(1) |
نام (NAME)
dune-shutdown - لغو و خاموش کردن هرگونه فرآیند ساخت در فضای کاری جاری.
خلاصه دستور (SYNOPSIS)
dune shutdown [گزینه]…
گزینهها (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
- نمایش اطلاعات ساخت.
- --display-separate-messages
- جداسازی پیامهای خطا با یک خط خالی.
- --error-reporting=VAL (absent=deterministic)
- زمان گزارش خطاهای ساخت را کنترل میکند. مقدار early خطاها را به محض شناسایی گزارش میدهد. مقدار deterministic خطاها را در پایان فرآیند ساخت و با ترتیبی مشخص و قطعی گزارش میدهد. مقدار twice هر خطا را دو بار گزارش میکند: یک بار به محض شناسایی و بار دیگر در پایان فرآیند ساخت با ترتیبی قطعی.
- -f, --force
- اجبار عملیاتهای وابسته به نامهای مستعار (alias) به اجرای مجدد، حتی اگر وابستگیهای آنها تغییری نکرده باشد.
- --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 جهت افزایش بازتولیدپذیری تستهای کش خلاصه در 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
- همیشه ردگیری پشته استثناها (backtraces) را چاپ میکند.
- --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)
- دستور شل برای مقایسه فایلها. از - برای غیرفعال کردن چاپ تفاوتها استفاده کنید.
- --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 فهرستی از نامهای کتابخانهها است که با کاما از هم جدا شدهاند و هر کدام باید یک backend ابزاردقیقسازی تعریف کرده باشند.
- -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 دارد. این گزینه عمدتاً برای انتشار (release) کاربرد دارد. در حین توسعه، معمولاً آنچه نیاز دارید ساخت یک هدف خاص <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)
- انتخاب پروفایل ساخت، برای مثال 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. این گزینه باید برای ساختهای نسخه نهایی (release) استفاده شود. برای مثال، باید از این گزینه در فایلهای <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)
- دستور بستهبندی برای اجرای باینریهای مقصد هنگام کامپایل متقاطع (cross-compiling). فرمت: TOOLCHAIN=CMD (مانند 'windows=wine').
- --terminal-persistence=MODE
- تغییر نحوه نمایش گزارش نتایج ساخت در کنسول بین بازسازیها در حالت --watch. حالتهای پشتیبانیشده: preserve، clear-on-rebuild، clear-on-rebuild-and-flush-history.
- --trace-file=FILE
- خروجی دادههای ردگیری در قالب catapult (سازگار با chrome://tracing).
- --verbose
- مشابه --display verbose
- --version
- نمایش اطلاعات نسخه.
- --watch-exclusions=REGEX
- افزودن یک عبارت باقاعده POSIX که دایرکتوریهای منطبق را از `dune build --watch` مستثنی میکند. گزینه --watch-exclusions را میتوان برای افزودن چندین استثنا تکرار کرد. همچنین میتوان از نقطه ویرگول (semicolon) به عنوان جداکننده استفاده کرد. اگر هیچ استثنایی ارائه نشود، مجموعهای استاندارد از موارد استثنا استفاده میشود؛ با این حال، در صورت استفاده از یک یا چند گزینه --watch-exclusions، هیچیک از استثناهای استاندارد استفاده نخواهند شد. استثناهای استاندارد عبارتند از: ^_opam /_opam ^_esy /_esy ^\.#.* /\.#.* ~$ ^#[^#]*#$ /#[^#]*#$ ^4913$ /4913$ /.git /.hg :/windows
- --workspace=FILE (absent DUNE_WORKSPACE env)
- استفاده از این فایل مشخص فضای کاری به جای جستجو برای آن.
- -x VAL (absent DUNE_CROSS_TARGET env)
- کامپایل متقاطع با استفاده از این زنجیره ابزار (toolchain).
وضعیت خروج (EXIT STATUS)
دستور dune shutdown با این مقادیر خارج میشود:
- 0
- در صورت موفقیت.
- 1
- در صورت بروز خطا.
- 130
- در صورتی که توسط یک سیگنال متوقف شود.
محیط (ENVIRONMENT)
این متغیرهای محیطی بر اجرای shutdown تأثیر میگذارند:
- 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
- دستور شل برای مقایسه فایلها. از - برای غیرفعال کردن چاپ تفاوتها استفاده کنید.
- DUNE_DISABLE_PROMOTION
- غیرفعال کردن تمام قواعد ارتقا
- DUNE_INSTRUMENT_WITH
- فعالسازی ابزاردقیقسازی توسط BACKENDS. پارامتر BACKENDS فهرستی از نامهای کتابخانهها است که با کاما از هم جدا شدهاند و هر کدام باید یک backend ابزاردقیقسازی تعریف کرده باشند.
- 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
- استفاده از این فایل مشخص فضای کاری به جای جستجو برای آن.
همچنین ببینید (SEE ALSO)
dune(1)
| Dune 3.24.2 |