OPAM-REMOTE(1) Opam Manual OPAM-REMOTE(1)

opam-remote - نام مستعاری برای repository

opam remote [--kind=KIND] [--rank=RANK] [--short] [OPTION]… [COMMAND] [ARG]…

دستور opam remote یک نام مستعار برای opam repository است.

برای جزئیات بیشتر، opam repository --help را ببینید.

-a, --all-switches
اعمال روی انتخاب‌های تمام switchهای پیکربندی‌شده.
--dont-select
هیچ انتخابی را به‌روزرسانی نکن.
--on-switches=SWITCHES
اعمال روی انتخاب‌های فهرست ارائه‌شده از switchها.
--set-default
اعمال روی انتخاب مخزن پیش‌فرضی که برای switchهای تازه‌ایجادشده استفاده می‌شود.
--this-switch
اعمال روی انتخاب‌های switch جاری (این حالت پیش‌فرض است).

-k KIND, --kind=KIND
نوع مخزن مورد استفاده را مشخص می‌کند (یکی از موارد http، local، git، darcs یا hg).
--rank=RANK (در صورت نبود=1)
رتبه مخزن را در فهرست مخازن پیکربندی‌شده تعیین می‌کند. تعاریف بسته‌ها با ترتیب رتبه صعودی در مخازن جستجو می‌شوند، بنابراین ۱ بالاترین اولویت است. اعداد صحیح منفی می‌توانند برای انتخاب از کمترین اولویت استفاده شوند، به‌طوری که -1 آخرین مورد خواهد بود. در غیر این صورت می‌توان از set-repos برای تعیین صریح کل فهرست مخازن به طور یکجا استفاده کرد.
-s, --short
فهرستی خام از نام‌ها را، یک نام در هر خط، بدون نمایش جزئیات در خروجی چاپ می‌کند.

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

--best-effort
اگر تمام بسته‌های درخواستی قابل نصب نباشند با شکست مواجه نشو: تلاش کن تا جای ممکن بیشترین بسته‌ها نصب شوند. توجه داشته باشید که ممکن است همه حل‌کننده‌های خارجی از این گزینه پشتیبانی نکنند (نسخه‌های اخیر aspcud یا mccs باید پشتیبانی کنند). این معادل با تنظیم متغیر محیطی $OPAMBESTEFFORT است.
--cli=MAJOR.MINOR (در صورت نبود=2.5)
از نحو و معناشناسی رابط خط فرمان MAJOR.MINOR استفاده می‌کند. این گزینه برای هرگونه استفاده ماندگار از opam (اسکریپت‌ها، پست‌های وبلاگ و غیره) در نظر گرفته شده است؛ هر نسخه‌ای از opam در همان سری MAJOR مانند انتشار MINOR مشخص‌شده رفتار خواهد کرد. این پرچم در opam 2.0 در دسترس نبود، بنابراین برای انتخاب رابط خط فرمان 2.0، به جای استفاده از این پارامتر، متغیر محیطی OPAMCLI را بر روی 2.0 تنظیم کنید.
--color=WHEN
خروجی را رنگی می‌کند. مقدار WHEN باید یکی از موارد always، never یا auto باشد.
--confirm-level=LEVEL
سطح تأیید؛ LEVEL باید یکی از موارد ask، no، yes یا unsafe-yes باشد. می‌تواند بیش از یک بار مشخص شود. اگر --yes یا --no نیز داده شده باشند، مقدار آخرین --confirm-level لحاظ می‌شود. این معادل با تنظیم متغیر محیطی $OPAMCONFIRMLEVEL است.
--criteria=CRITERIA
ترجیحات (preferences) کاربر را برای حل وابستگی در این اجرا مشخص می‌کند. بر $OPAMCRITERIA، $OPAMFIXUPCRITERIA و $OPAMUPGRADECRITERIA اولویت دارد. برای جزئیات مربوط به زبان پشتیبانی‌شده و حل‌کننده‌های خارجی موجود، http://opam.ocaml.org/doc/External_solvers.html را ببینید. یک راهنمای جامع برای استفاده از ترجیحات حل‌کننده را می‌توان در http://www.dicosmo.org/Articles/usercriteria.pdf یافت.
--cudf=FILENAME
گزینه اشکال‌زدایی: درخواست‌های CUDF ارسال‌شده به حل‌کننده را در FILENAME-<n>.cudf ذخیره می‌کند که در آن <n> نشان‌دهنده n-اُمین فراخوانی حل‌کننده در طول اجرای opam است.
--debug
پیام‌های اشکال‌زدایی را در stderr چاپ می‌کند. این معادل با تنظیم $OPAMDEBUG بر روی "true" است.
--debug-level=LEVEL
مانند --debug، اما امکان تعیین سطح اشکال‌زدایی را فراهم می‌کند (--debug آن را روی 1 تنظیم می‌کند). معادل با تنظیم $OPAMDEBUG بر روی یک عدد صحیح مثبت است.
--git-version
در صورت تنظیم بودن نسخه git برنامه opam (یعنی زمانی که از نسخه توسعه استفاده می‌کنید)، آن را چاپ کرده و خارج می‌شود.
--help[=FMT] (پیش‌فرض=auto)
این راهنما را در قالب FMT نمایش می‌دهد. مقدار FMT باید یکی از موارد auto، pager، groff یا plain باشد. با مقدار auto، هر زمان که متغیر محیطی TERM برابر با dumb یا تعریف‌نشده باشد، قالب برابر با pager یا plain خواهد بود.
--ignore-pin-depends
سنجاق‌های (pin) اضافی مورد نیاز بسته‌هایی که چه به صورت دستی از طریق opam pin و چه از طریق opam install DIR سنجاق شده‌اند را نادیده می‌گیرد. این معادل با تنظیم IGNOREPINDEPENDS=true است.
--json=FILENAME
نتایج اجرای opam را در یک فایل ماشین‌خوان ذخیره می‌کند. اگر نام فایل شامل نویسه `%' باشد، با نمایه‌ای جایگزین می‌شود که روی فایلی از پیش موجود بازنویسی نکند. مشابه با تنظیم متغیر $OPAMJSON است.
--no
بدون پرسش، به تمام سؤالات بله/خیر opam پاسخ منفی می‌دهد. همچنین --confirm-level را ببینید. این معادل با تنظیم $OPAMNO بر روی "true" است.
--no-aspcud
در نسخه 2.1 حذف شد.
--no-auto-upgrade
هنگام پیکربندی یا به‌روزرسانی مخزنی که برای نسخه‌های قدیمی‌تر opam نوشته شده است (1.2)، opam در داخل آن را به قالب فعلی تبدیل می‌کند. این گزینه این رفتار را غیرفعال می‌کند. توجه داشته باشید که مخازن باید نسخه قالب خود را در یک فایل 'repo' در ریشه خود تعریف کنند، در غیر این صورت فرض می‌شود که در قالب قدیمی هستند. در هر صورت، در صورت امکان ارتقای دستی مخازن با استفاده از opam admin upgrade [--mirror URL] ترجیح دارد.
--no-self-upgrade
در صورت وجود فایل باینری جدیدتر در OPAMROOT/opam، برنامه opam خود را با آن جایگزین می‌کند. این گزینه این رفتار را غیرفعال می‌کند.
-q, --quiet
گزینه --verbose را غیرفعال می‌کند.
--root=ROOT
از ROOT به عنوان مسیر ریشه فعلی استفاده می‌کند. این معادل با تنظیم متغیر محیطی $OPAMROOT بر روی ROOT است.
--safe, --readonly
اطمینان حاصل می‌کند که هیچ چیزی به طور خودکار به‌روزرسانی یا بازنویسی نشود. به عنوان مثال برای فراخوانی از اسکریپت‌های تکمیل خودکار (completion) مفید است. هرگاه چنین عملیاتی مورد نیاز باشد با شکست مواجه می‌شود؛ همچنین از انتظار برای قفل‌ها جلوگیری می‌کند، از پرسش‌های تعاملی صرف‌نظر می‌کند و بر متغیر $OPAMDEBUG تقدم دارد. این معادل با تنظیم متغیر محیطی $OPAMSAFE است.
--solver=CMD
حل‌کننده CUDF مورد استفاده برای حل مشکلات نصب بسته‌ها را مشخص می‌کند. این مقدار می‌تواند یک حل‌کننده از پیش تعریف‌شده باشد (این نسخه از opam از builtin-mccs+lp()، builtin-mccs+glpk، builtin-dummy-z3-solver، builtin-0install، aspcud، mccs، aspcud-old و packup پشتیبانی می‌کند)، یا یک دستور سفارشی که باید شامل متغیرهای %{input}%، %{output}%، %{criteria}% و به صورت اختیاری %{timeout}% باشد. این معادل با تنظیم متغیر محیطی $OPAMEXTERNALSOLVER است.
--strict
هرگاه خطایی در تعریف یک بسته یا فایل پیکربندی پیدا شود با خطا متوقف شو. حالت پیش‌فرض ادامه بی‌صدا در صورت امکان است.
--switch=SWITCH
از SWITCH به عنوان switch جاری کامپایلر استفاده می‌کند. این معادل با تنظیم متغیر محیطی $OPAMSWITCH بر روی SWITCH است.
--use-internal-solver
هرگونه حل‌کننده خارجی را غیرفعال کرده و از حل‌کننده توکار استفاده می‌کند (این امر نیازمند این است که opam با حل‌کننده توکار کامپایل شده باشد). این معادل با تنظیم متغیرهای محیطی $OPAMNOASPCUD یا $OPAMUSEINTERNALSOLVER است.
-v, --verbose
توضیحات و جزئیات بیشتری در خروجی نمایش می‌دهد. یک بار درج -v تمام دستورهای مربوط به بسته‌ها را نشان می‌دهد؛ تکرار آن دستورهای فراخوانی‌شده به صورت داخلی (مانند tar، curl، patch و غیره) را نیز نمایش می‌دهد. تکرار به تعداد n بار معادل با تنظیم متغیر محیطی $OPAMVERBOSE بر روی "n" است.
--version
اطلاعات نسخه را نمایش می‌دهد.
-w, --working-dir
هنگام به‌روزرسانی بسته‌های متصل به یک دایرکتوری محلی و تحت کنترل نسخه، به جای آخرین وضعیت ثبت‌شده (commit) یا ارجاعی (ref) که به آن اشاره دارند، به وضعیت کاری فعلی سورس آن‌ها به‌روزرسانی می‌کند. از آنجا که دایرکتوری سورس همان‌گونه که هست کپی می‌شود، تمیز نبودن آن ممکن است به شکست ساخت opam منجر شود. این گزینه فقط بر بسته‌هایی تأثیر می‌گذارد که به صراحت در خط فرمان مشخص شده‌اند. همچنین می‌تواند از طریق متغیر محیطی $OPAMWORKINGDIR تنظیم شود.
-y, --yes
بدون پرسش، به تمام سؤالات بله/خیر opam پاسخ مثبت می‌دهد. همچنین --confirm-level را ببینید. این معادل با تنظیم متغیر محیطی $OPAMYES بر روی "true" است..SH "محیط (ENVIRONMENT)"

ابزار Opam از متغیرهای محیطی فهرست‌شده در اینجا استفاده می‌کند. متغیرهای بولی (Boolean) باید برای غیرفعال‌سازی روی "0"، "no"، "false" یا رشتهٔ خالی، و برای فعال‌سازی روی "1"، "yes" یا "true" تنظیم شوند.

OPAMALLPARENS تمام فیلترها را درون پرانتز قرار می‌دهد.

OPAMASSUMEDEPEXTS گزینه `--assume-depexts' را ببینید.`

OPAMAUTOANSWER فقط برای استفاده داخلی.

OPAMAUTOREMOVE گزینه حذف `--auto-remove' را ببینید.`

OPAMBESTEFFORT گزینه `--best-effort' را ببینید.`

OPAMBESTEFFORTPREFIXCRITERIA رشته‌ای را تعیین می‌کند که هنگام تنظیم گزینه `--best-effort' باید به معیارها پیشوند شود، و انتظار می‌رود ویژگی `opam-query' را در راه‌حل به بیشینه برساند.

OPAMBUILDDOC در نگارش 2.1 حذف شد.

OPAMBUILDTEST در نگارش 2.1 حذف شد.

OPAMCLI گزینه `--cli' را ببینید.`

OPAMCOLOR هنگامی که روی always یا never تنظیم شود، یک مقدار پیش‌فرض برای گزینه `--color' تعیین می‌کند.

OPAMCONFIRMLEVEL گزینه `--confirm-level` را ببینید. OPAMCONFIRMLEVEL بر OPAMYES و OPAMNO اولویت دارد.

OPAMCRITERIA ترجیحات (preferences) کاربر را برای حل وابستگی مشخص می‌کند. مقدار پیش‌فرض به نگارش حل‌کننده بستگی دارد؛ برای دانستن تنظیمات فعلی از `config report' استفاده کنید. همچنین گزینه --criteria را ببینید.

OPAMCUDFFILE گراف cudf را در file-actions-explicit.dot ذخیره می‌کند.

OPAMCUDFTRIM پالایش بسته‌های نامرتبط را هنگام پیش‌پردازش CUDF کنترل می‌کند.

OPAMCURL می‌تواند برای انتخاب یک برنامه 'curl' مشخص استفاده شود. برای گزینه‌های بیشتر OPAMFETCH را ببینید.

OPAMDEBUG گزینه‌های `--debug' و `--debug-level' را ببینید.

OPAMDEBUGSECTIONS در صورت تنظیم، پیام‌های اشکال‌زدایی را به فهرست بخش‌های جداشده با فاصله محدود می‌کند. بخش‌ها می‌توانند به‌طور اختیاری یک سطح اشکال‌زدایی مشخص داشته باشند (برای مثال، CLIENT:2 یا CLIENT CUDF:2)، اما در غیر این صورت از `--debug-level' استفاده می‌شود.

OPAMDIGDEPTH میزان تهاجمی‌بودن جستجوی تعارض‌ها را هنگام پیش‌پردازش CUDF تعیین می‌کند.

OPAMDOWNLOADJOBS بیشینه تعداد بارگیری‌های هم‌زمان را تعیین می‌کند.

OPAMDROPWORKINGDIR هنگام به‌روزرسانی، بسته‌هایی را که پیش‌تر با --working-dir به‌روزرسانی شده‌اند بازنویسی می‌کند. بدون تنظیم این متغیر، opam آن‌ها را بدون تغییر نگه می‌دارد مگر اینکه صریحاً در خط فرمان نام برده شوند.

OPAMDRYRUN گزینه `--dry-run' را ببینید.`

OPAMEDITOR ویرایشگر مورد استفاده برای ویرایش فایل‌های opam را تعیین می‌کند، و بر $EDITOR و $VISUAL تقدم دارد.

OPAMERRLOGLEN تعداد خطوط گزارش چاپ‌شده هنگام شکست یک زیرفرآیند را تعیین می‌کند. مقدار 0 برای چاپ همهٔ خطوط است.

OPAMEXTERNALSOLVER گزینه `--solver' را ببینید.`

OPAMFAKE گزینه `--fake' را ببینید.`

OPAMFETCH نحوه بارگیری فایل‌ها را مشخص می‌کند: یا `wget'، یا `curl' و یا یک دستور سفارشی که در آن متغیرهای %{url}%، %{out}%، %{retry}%، %{compress}% و %{checksum}% جایگزین خواهند شد. مقدار 'download-command' را از فایل پیکربندی اصلی بازنویسی می‌کند.

OPAMFIXUPCRITERIA همانند OPAMUPGRADECRITERIA، اما مخصوص fixup و reinstall.

OPAMIGNORECONSTRAINTS گزینه نصب `--ignore-constraints-on' را ببینید.

OPAMIGNOREPINDEPENDS گزینه `--ignore-pin-depends' را ببینید.`

OPAMINPLACEBUILD گزینه `--inplace-build' را ببینید.`

OPAMJOBS بیشینه تعداد فرآیندهای موازی (کارگران) برای اجرا را تعیین می‌کند.

OPAMJSON خروجی json را در فایل مشخص‌شده ثبت می‌کند (از نویسه `%' برای شماره‌گذاری فایل‌ها استفاده کنید).

OPAMKEEPBUILDDIR گزینه نصب `--keep-build-dir' را ببینید.

OPAMKEEPLOGS به opam اعلام می‌کند که برخی گزارش‌های موقت دستورات و برخی نسخه‌های پشتیبان را حذف نکند. این متغیر برخی عملیات پایانی را نادیده می‌گیرد و همچنین ممکن است به دریافت ردگیری‌های پشته (backtrace) مطمئن‌تر کمک کند.

OPAMLOCKED ترکیبی از گزینه‌های `--locked' و `--lock-suffix'.

OPAMLOGS logdir دایرکتوری گزارش‌ها را تعیین می‌کند، پیش‌فرض یک دایرکتوری موقت در /tmp است

OPAMMAKECMD دستور make سیستمی مورد استفاده را تعیین می‌کند.

OPAMMERGEOUT خروجی‌های فرآیند را ادغام می‌کند، stderr روی stdout.

OPAMNO به هر سؤالی پاسخ no می‌دهد، گزینه‌های `--no` و `--confirm-level` را ببینید. در صورت تنظیم OPAMCONFIRMLEVEL یا OPAMYES، متغیر OPAMNO نادیده گرفته می‌شود.

OPAMNOAGGREGATE در دستور `opam admin check' بسته‌ها را تجمیع نمی‌کند.

OPAMNOASPCUD منسوخ شده است.

OPAMNOAUTOUPGRADE ارتقای خودکار داخلی مخازن با قالب پیشین به قالب فعلی را هنگام 'update' یا 'init' غیرفعال می‌کند.

OPAMNOCHECKSUMS گزینه --no-checksums را در صورت موجود بودن فعال می‌کند.

OPAMNODEPEXTS مدیریت وابستگی‌های سیستمی را غیرفعال می‌کند، گزینه `--no-depexts' را ببینید.

OPAMNOENVNOTICE استفاده داخلی.

OPAMNOSELFUPGRADE گزینه `--no-self-upgrade' را ببینید

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

OPAMPRECISETRACKING ردیابی دقیق و ریزدانه دایرکتوری‌ها.

OPAMPREPRO برای غیرفعال کردن پیش‌پردازش CUDF این متغیر را روی false قرار دهید. کارایی کمتری دارد، اما ممکن است به اشکال‌زدایی مشکلات حل‌کننده کمک کند.

OPAMREPOSITORYTARRING مخازن را به‌طور داخلی به عنوان فایل‌های tar.gz ذخیره می‌کند. این ویژگی روی سامانه‌های فایلی که با پیمایش درخت‌های بزرگ سازگاری خوبی ندارند اما کش مناسبی در /tmp دارند بسیار سریع‌تر است. با این حال در حالت کلی کندتر است.

OPAMREQUIRECHECKSUMS گزینه `--require-checksums' را در صورت موجود بودن فعال می‌کند (برای مثال برای `opam install').

OPAMRETRIES تعداد دفعات تلاش پیش از ناموفق دانستن بارگیری‌ها را تعیین می‌کند.

OPAMREUSEBUILDDIR گزینه `--reuse-build-dir' را ببینید.

OPAMROOT گزینه `--root' را ببینید. این مقدار به‌طور خودکار توسط `opam env --root=DIR --set-root' تنظیم می‌شود.

OPAMROOTISOK هنگام اجرا به عنوان ریشه (root) هشداری صادر نمی‌کند.

OPAMSAFE گزینه `--safe' را ببینید.

OPAMSHOW گزینه `--show' را ببینید.

OPAMSKIPUPDATE گزینه `--skip-updates' را ببینید.

OPAMSKIPVERSIONCHECKS برخی از بررسی‌های نگارش را نادیده می‌گیرد. ناامن است و صرفاً برای آزمایش‌های سازگاری کاربرد دارد.

OPAMSOLVERALLOWSUBOPTIMAL (پیش‌فرض `true') به برخی حل‌کننده‌ها اجازه می‌دهد پس از اتمام مهلت زمانی (timeout)، همچنان یک راه‌حل بازگردانند؛ با وجود اینکه از سازگاری راه‌حل اطمینان حاصل می‌شود، در این حالت هیچ تضمینی وجود ندارد که با معیارهای بهینه‌سازی مورد نظر تطابق داشته باشد. اگر `true' باشد، opam با یک هشدار ادامه می‌دهد؛ اگر `false' باشد، اتمام مهلت به عنوان خطا در نظر گرفته می‌شود. در حال حاضر فقط بخش پشتیبان builtin-z3 این حالت تنزل‌یافته را مدیریت می‌کند.

OPAMSOLVERTIMEOUT مهلت زمانی اختصاص‌یافته به حل‌کننده را تغییر می‌دهد. پیش‌فرض 60.0 است، برای نامحدود بودن آن را روی 0 بگذارید. توجه داشته باشید که ممکن است همه حل‌کننده‌ها از این گزینه پشتیبانی نکنند.

OPAMSOLVERTOLERANCE میزان مدارا نسبت به انتخاب راه‌حل غیربهینه توسط حل‌کننده (مثلاً احتمال واکشی بسته‌های قدیمی) را تغییر می‌دهد. مقادیر متداول از 0.0 (بهترین راه‌حل شناخته‌شده برای حل‌کننده) تا 1.0 (راه‌حل غیربهینه) متغیر است. پیش‌فرض 0.0 است. این گزینه در صورتی مفید است که حل‌کننده نتواند در زمان معقولی به راه‌حل برسد (به $OPAMSOLVERTIMEOUT مراجعه کنید). توجه داشته باشید که ممکن است همه حل‌کننده‌ها از این گزینه پشتیبانی نکنند.

OPAMSTATS در نگارش 2.4 حذف شد.

OPAMSTATUSLINE یک خط وضعیت پویا نمایش می‌دهد که جریان فعلی امور را روی ترمینال نشان می‌دهد. (یکی از مقادیر always، never یا auto)

OPAMSTRICT در صورت بروز هرگونه ناسازگاری (خواندن فایل، وارد کردن switch و غیره) با خطا متوقف می‌شود.

OPAMSWITCH گزینه `--switch' را ببینید. به‌طور خودکار توسط `opam env --switch=SWITCH --set-switch' تنظیم می‌شود.

OPAMUNLOCKBASE گزینه نصب `--unlock-base' را ببینید.

OPAMUPGRADECRITERIA ترجیحات (preferences) کاربر برای حل وابستگی هنگام ارتقا را مشخص می‌کند. در صورت تنظیم هر دو، در زمان ارتقا بر OPAMCRITERIA تقدم دارد. همچنین گزینه --criteria را ببینید.

OPAMUSEINTERNALSOLVER گزینه `--use-internal-solver' را ببینید.

OPAMUSEOPENSSL در نگارش 2.2 حذف شد.

OPAMUTF8 استفاده از نویسه‌های UTF8 در خروجی (یکی از مقادیر always، never یا auto). مقدار پیش‌فرض `auto' است که بر اساس locale مشخص می‌شود).

OPAMUTF8MSGS استفاده از نویسه‌های گسترش‌یافتهٔ UTF8 در پیام‌های opam. متضمن OPAMUTF8 است. این مورد به‌طور پیش‌فرض فقط در macOS فعال است.

OPAMVALIDATIONHOOK در صورت تنظیم، از دستور `%{hook%}' برای اعتبارسنجی به‌روزرسانی مخزن opam استفاده می‌کند.

OPAMVERBOSE گزینه `--verbose' را ببینید.

OPAMVERBOSEON گزینه --verbose-on را ببینید

OPAMVERSIONLAGPOWER استفاده نشود.

OPAMWITHDEVSETUP گزینه نصب `--with-dev-setup' را ببینید.

OPAMWITHDOC گزینه نصب `--with-doc' را ببینید.

OPAMWITHTEST گزینه نصب `--with-test را ببینید.

OPAMWORKINGDIR گزینه `--working-dir' را ببینید.

OPAMYES گزینه‌های `--yes' و `--confirm-level` را ببینید. OPAMYES بر OPAMNO اولویت دارد و در صورت تنظیم OPAMCONFIRMLEVEL نادیده گرفته می‌شود.

OPAMVAR_var محتوای متغیر var را هنگام جایگزینی رشته‌های `%{var}%` در فایل‌های `opam` بازنویسی می‌کند.

OPAMVAR_package_var محتوای متغیر package:var را هنگام جایگزینی رشته‌های `%{package:var}%` در فایل‌های `opam` بازنویسی می‌کند..SH "نسخه رابط خط فرمان (CLI VERSION)"

تمام اسکریپت‌ها و فراخوانی‌های برنامه‌نویسی‌شدهٔ opam باید از `--cli' استفاده کنند تا اطمینان حاصل شود که با نسخه‌های بعدی کلاینت opam بدون مشکل کار می‌کنند. علاوه بر این، پست‌های وبلاگ یا سایر مستندات نیز می‌توانند از آن بهره‌مند شوند، زیرا از قدیمی شدن اطلاعات جلوگیری می‌کند.

اگرچه opam فقط از ریشه‌ها (~/.opam/) برای نسخهٔ کنونی پشتیبانی می‌کند، اما سازگاری با نسخه‌های پیشین را برای رابط خط فرمان خود فراهم می‌آورد.

از آنجا که پشتیبانی از نسخهٔ CLI تنها در opam 2.1 اضافه شد، از OPAMCLI برای انتخاب پشتیبانی از 2.0 استفاده کنید (چرا که opam 2.0 صرفاً آن را نادیده می‌گیرد)، و برای نسخه‌های 2.1 (یا جدیدتر) از `--cli=2.1' استفاده نمایید، چرا که استفاده از یک متغیر محیطی برای کنترل تجزیهٔ نحو شکننده است. بدین منظور، اگر OPAMCLI نسخه‌ای معتبر غیر از 2.0 را مشخص کند، و همچنین در صورتی که `--cli=2.0' مشخص شده باشد، opam یک هشدار نمایش می‌دهد.

نسخهٔ رابط خط فرمان با استفاده از گزینهٔ `--cli' یا متغیر محیطی OPAMCLI انتخاب می‌شود. گزینهٔ `--cli' می‌تواند بیش از یک بار مشخص شود که در این حالت آخرین مورد اولویت دارد. متغیر OPAMCLI تنها در صورتی بررسی می‌شود که `--cli' داده نشده باشد.

به عنوان یک استثنا بر موارد زیر، در صورتی که دستور پیدا نشود یا قابل اجرا نباشد دستور `exec' مقدار 127، و در غیر این صورت مقدار وضعیت خروج خود دستور را برمی‌گرداند.

0
موفقیت، یا درست (true) برای پرس‌وجوهای بولی.
1
نادرست (False). زمانی برگردانده می‌شود که یک مقدار بولی مورد انتظار باشد، برای مثال هنگام اجرا با --check یا برای پرس‌وجوهایی مانند opam lint.
2
آرگومان‌های خط فرمان نادرست، یا آرگومان‌های خط فرمانی که به زمینه‌ای نامعتبر اشاره دارند (مانند فایلی که از قالب مورد انتظار پیروی نمی‌کند).
5
یافت نشد. موردی (بسته، نسخه، مخزن و غیره) را درخواست کرده‌اید که پیدا نشد.
10
لغو شد. عملیات نیاز به تأیید داشت که داده نشد.
15
امکان دریافت قفل‌های لازم برای عملیات وجود نداشت.
20
هیچ راهکاری برای درخواست کاربر وجود ندارد. این حالت برای مثال می‌تواند ناشی از درخواست نصب دو بستهٔ ناسازگار با یکدیگر باشد.
30
خطا در تعریف بسته یا سایر فایل‌های متادیتا. استفاده از --strict بیشتر این خطا را ایجاد می‌کند.
31
خطای اسکریپت بسته. برخی از عملیات‌های بسته ناموفق بودند. این ممکن است به دلیل خطایی در بسته‌ها یا ناسازگاری با سیستم شما باشد. این می‌تواند یک خطای جزئی باشد.
40
خطای همگام‌سازی. واکشی برخی از ریموت‌ها از شبکه امکان‌پذیر نبود. این می‌تواند یک خطای جزئی باشد.
50
خطای پیکربندی. پیکربندی opam یا سیستم اجازهٔ انجام عملیات را نمی‌دهد و نیاز به اصلاح دارد.
60
شکست حل‌کننده (Solver). حل‌کننده نتوانست پاسخی معتبر ارائه دهد. این می‌تواند به دلیل نقص در یک حل‌کنندهٔ خارجی یا خطایی در پیکربندی حل‌کننده باشد.
99
خطای داخلی. مشکلی رخ داده است، احتمالاً به دلیل وجود باگ در خود opam.
130
وقفه توسط کاربر. سیگنال SIGINT دریافت شد، که معمولاً به دلیل فشردن Ctrl-C توسط کاربر است.
0
در صورت موفقیت.
123
در صورت بروز خطاهای نامشخص گزارش‌شده در خروجی خطای استاندارد (stderr).
124
در صورت بروز خطاهای تجزیهٔ خط فرمان.
125
در صورت بروز خطاهای داخلی غیرمنتظره (باگ‌ها).

به https://opam.ocaml.org/doc مراجعه کنید.

David Allsopp <david@tarides.com>

Vincent Bernardoff <vb@luminar.eu.org>

Raja Boujbel <raja.boujbel@ocamlpro.com>

Kate Deplaix <kit-ty-kate@outlook.com>

Roberto Di Cosmo <roberto@dicosmo.org>

Thomas Gazagnaire <thomas@gazagnaire.org>

Louis Gesbert <louis.gesbert@ocamlpro.com>

Fabrice Le Fessant <Fabrice.Le_fessant@inria.fr>

Anil Madhavapeddy <anil@recoil.org>

Guillem Rieu <guillem.rieu@ocamlpro.com>

Ralf Treinen <ralf.treinen@pps.jussieu.fr>

Frederic Tuong <tuong@users.gforge.inria.fr>

opam(1)

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

Opam 2.5.2