| nvchecker(1) | General Commands Manual | nvchecker(1) |
نام (NAME)
nvchecker - بررسیکننده انتشار نسخه جدید نرمافزارها
ابزار nvchecker (کوتاهشدهی new version checker) برای بررسی اینکه آیا نسخه جدیدی از یک نرمافزار منتشر شده است یا خیر به کار میرود.
این شاخه
مربوط به
نسخه 2.0 است.
برای نسخه
قدیمی 1.x،
لطفاً به
شاخه v1.x
بروید.
https://github.com/lilydjwg/nvchecker/actions?query=workflow%3A%22run+tests%22
https://badge.fury.io/py/nvchecker
وابستگیها (DEPENDENCIES)
- Python 3.9+
- کتابخانههای پایتون: structlog، platformdirs، tomli (روی پایتون < 3.11)
- یکی از این ترکیبهای کتابخانههای پایتون (به ترتیب اولویت):
- tornado + pycurl
- aiohttp
- httpx با پشتیبانی از http2 (آزمایشی؛ تنها آخرین نسخه پشتیبانی میشود)
- tornado
- •
- تمام دستورهای استفادهشده در فایلهای پیکربندی نسخه نرمافزار شما
نصب و اجرا (INSTALL AND RUN)
برای نصب:
pip3 install nvchecker
برای استفاده از آخرین کد، میتوانید این مخزن را نیز کلون کرده و اجرا کنید:
python3 setup.py install
برای مشاهده گزینههای موجود:
nvchecker --help
اجرا با یک یا چند فایل نسخه نرمافزار:
nvchecker -c config_file.toml
یک فایل پیکربندی ساده میتواند به این صورت باشد:
[nvchecker] source = "github" github = "lilydjwg/nvchecker" [python-toml] source = "pypi" pypi = "toml"
معمولاً مایل خواهید بود تعدادی "version record files" مشخص کنید؛ به ادامه مراجعه نمایید..SS گزارشگیری JSON (JSON logging)
با استفاده از --logger=json یا --logger=both، میتوانید به یک گزارش ساختاریافته برای پردازش یا استفادهٔ برنامهنویسیشده دسترسی پیدا کنید. میتوانید از --json-log-fd=FD برای مشخص کردن توصیفگر فایل (file descriptor) جهت ارسال گزارشها استفاده نمایید (دقت کنید که بافرینگ خطی انجام شود). گزینهٔ سطح گزارشگیری (-l یا --logging) روی این مورد تأثیری ندارد.
گزارش JSON بهصورت یک رشتهٔ JSON در هر سطر است. رویدادها و فیلدهای مستندشدهٔ زیر پایدار هستند؛ موارد مستندنشده ممکن است بدون اطلاع قبلی تغییر کنند.
- event=updated
- یک بهروزرسانی شناسایی شده است. فیلدهای name، revision، old_version و version در دسترس هستند. old_version ممکن است null باشد و revision ممکن است وجود نداشته باشد.
- event=up-to-date
- هیچ بهروزرسانیای وجود ندارد. فیلدهای name و version در دسترس هستند.
- event=no-result
- هیچ نگارشی شناسایی نشد. ممکن است خطایی رخ داده باشد. فیلد name در دسترس است.
- level=error
- خطایی رخ داده است. فیلدهای name و exc_info برای ارائهٔ اطلاعات بیشتر ممکن است در دسترس باشند.
ارتقا از نگارش 1.x (Upgrade from 1.x version)
چندین تغییر ناسازگار با گذشته نسبت به نگارش قبلی 1.x وجود دارد.
- 1.
- نگارش 2.x برای اجرا به Python 3.7 یا بالاتر نیاز دارد.
- 2.
- نحو دستور کمی تغییر کرده است. لازم است از سوییچ -c برای مشخص کردن فایل پیکربندی نگارش نرمافزار خود استفاده کنید (یا از مقدار پیشفرض استفاده نمایید).
- 3.
- قالب فایل پیکربندی از ini به toml https://toml.io تغییر یافته است. میتوانید از اسکریپت nvchecker-ini2toml برای تبدیل فایلهای پیکربندی قدیمی خود استفاده کنید. با این حال، یادداشتها (کامنتها) و قالببندی از دست خواهند رفت و ممکن است برخی گزینهها بهدرستی تبدیل نشوند.
- 4.
- چندین گزینه تغییر نام یافتهاند: max_concurrent به max_concurrency، و در نام تمام گزینهها کاراکتر - با _ جایگزین شده است.
- 5.
- تمام جدولهای پیکربندی نرمافزار، به جای اینکه منبع بر اساس نام گزینههای مورد استفاده تشخیص داده شود، به یک گزینهٔ source برای تعیین منبع مورد استفاده نیاز دارند. این امر امکان شناسایی پلاگینهای منبع اضافی را فراهم میکند.
- 6.
- فایلهای رکورد نگارش به استفاده از قالب JSON تغییر یافتهاند (قالب قدیمی هنگام نوشتن تبدیل خواهد شد).
- 7.
- منبع vcs حذف شده است. (در حال حاضر درون lilac https://github.com/archlinuxcn/lilac در دسترس است.) یک منبع git ارائه شده است.
- 8.
- گزینههای include_tags_pattern و ignored_tags حذف شدهاند. به جای آنها از List Options استفاده کنید.
فایلهای رکورد نگارش (VERSION RECORD FILES)
فایلهای رکورد نگارش مشخص میکنند که چه نگارشی از نرمافزار برای شما شناختهشده یا در دسترس است. آنها یک شیء سادهٔ JSON هستند که نام نرمافزارها را به نگارشهای شناختهشده نگاشت میکنند.
دستور nvtake
این دستور به مدیریت فایلهای رکورد نگارش کمک میکند. این دستور فایلهای رکورد نگارش قدیمی و جدید، و فهرستی از نامهای ارائهشده در خط فرمان را میخواند. سپس نگارشهای مربوط به آن نامها را در فایل رکورد نگارش قدیمی بهروزرسانی میکند.
این ابزار زمانی کاربرد دارد که برخی از نرمافزارهای بهروزرسانیشده (نه همهٔ آنها) را شناخته و پردازش کردهاید. به جای ویرایش دستی فایل، میتوانید این موضوع را از طریق این دستور به nvchecker اعلام کنید.
اگر مکان فایلهای رکورد نگارش را در فایل پیکربندی خود مشخص کنید، این دستور بیشترین کاربرد را خواهد داشت. برای نحوهٔ استفاده از فایل پیکربندی، بخشهای بعدی را ببینید.
دستور nvcmp
این دستور فایل newver را با فایل oldver مقایسه میکند و تفاوتها را بهعنوان بهروزرسانی چاپ میکند، برای نمونه:
$ nvcmp -c sample_source.toml Sparkle Test App None -> 2.0 test 0.0 -> 0.1
فایلهای پیکربندی (CONFIGURATION FILES)
فایلهای منبع نگارش نرمافزار در قالب toml https://toml.io هستند. نام کلید (key name) همان نام نرمافزار است. فیلدهای زیر برای مشخص کردن چگونگی تعیین نگارش کنونی نرمافزار توسط nvchecker به کار میروند.
برای مشاهدهٔ یک نمونه، sample_source.toml https://github.com/lilydjwg/nvchecker/blob/master/sample_config.toml را ببینید.
جدول پیکربندی (Configuration Table)
یک جدول ویژه به نام __config__ برخی گزینههای پیکربندی را ارائه میدهد.
مسیرهای نسبی نسبت به فایلهای منبع سنجیده میشوند، و ~ و متغیرهای محیطی بسط داده میشوند.
گزینههای پشتیبانیشده در حال حاضر عبارتند از:
- oldver
- مشخص کردن فایل رکورد نگارش حاوی اطلاعات نگارش قدیمی.
- newver
- مشخص کردن فایل رکورد نگارش جهت ذخیرهٔ اطلاعات نگارش جدید.
- proxy
- پروکسی HTTP مورد استفاده. قالب آن بهصورت proto://host:port است، مانند http://localhost:8087. پسآیندهای مختلف سطوح متفاوتی از پشتیبانی را برای این مورد دارند؛ برای نمونه با pycurl میتوانید از پروکسیهای socks5h://host:port استفاده کنید.
- max_concurrency
- بیشینهٔ تعداد کارهای همروند. پیشفرض: 20.
- http_timeout
- مدتزمان به ثانیه برای انتظار در درخواستهای HTTP. پیشفرض: 20.
- keyfile
- مشخص کردن
یک فایل
پیکربندی toml
حاوی
اطلاعات
کلید (توکن).
این فایل
باید شامل
یک جدول keys
باشد که نام
کلیدها را
به مقادیر
کلید نگاشت
میکند.
برای اطلاع
از نام
کلید(های)
مورد
استفاده،
به منبع
مربوطه
مراجعه
کنید.
نمونهٔ keyfile.toml:
[keys] # https://github.com/settings/tokens # scope: repo -> public_repo github = "ghp_<stripped>"
گزینههای زیر برای تمام منابع بررسی اعمال میشوند. میتوانید از آنها در هر مدخلی در فایل پیکربندی خود استفاده کنید.
- prefix
- اگر رشته
نسخه با این
پیشوند
آغاز شود،
پیشوند حذف
میشود. در
غیر این
صورت، رشته
نسخه
همانگونه
که هست
برگردانده
میشود.
اگر هم prefix و هم from_pattern/to_pattern استفاده شوند، ابتدا prefix اعمال میشود.
- from_pattern, to_pattern
- هر دو
عبارتهای
باقاعده
سازگار با Python
هستند. اگر
from_pattern در رشته
نسخه یافت
شود، با to_pattern
جایگزین
خواهد شد.
اگر from_pattern یافت نشود، رشته نسخه بدون تغییر باقی میماند و هیچ خطایی صادر نمیشود.
- missing_ok
- در صورتی که یک ماژول بررسی نسخه چیزی پیدا نکند، هشدارها و خطاها را نادیده میگیرد. همه منابع از این گزینه پشتیبانی نمیکنند.
- proxy
- پروکسی HTTP
مورد
استفاده.
قالب آن به
صورت proto://host:port
است، مانند
http://localhost:8087.
پشتیبانهای
مختلف سطوح
متفاوتی از
پشتیبانی
را برای این
مورد
دارند،
برای مثال
با pycurl
میتوانید
از
پروکسیهای
socks5h://host:port
استفاده
کنید.
برای نادیده گرفتن تنظیمات سراسری، مقدار آن را برابر با "" (رشته خالی) قرار دهید.
این گزینه تنها زمانی کار میکند که پیادهسازی منبع از کلاینت HTTP داخلی استفاده کند، و با منبع aur کار نمیکند زیرا به صورت دستهای پردازش میشود (با این حال، پیکربندی سراسری پروکسی همچنان اعمال میگردد).
- user_agent
- رشته user agent مورد استفاده برای درخواستهای HTTP.
- tries
- تعداد
دفعات تلاش
در هنگام
وقوع خطای
شبکه.
پیشفرض 1
است.
این گزینه تنها زمانی کار میکند که پیادهسازی منبع از کلاینت HTTP داخلی استفاده کند.
- httptoken
- یک توکن احراز هویت شخصی که برای دریافت نشانی وب با هدر Authorization استفاده میشود. نوع توکن به احراز هویت مورد نیاز بستگی دارد.
- برای توکن Bearer تنظیم کنید: Bearer <Your_bearer_token>
- برای توکن Basic تنظیم کنید: Basic <Your_base64_encoded_token>
در keyfile توکن httptoken_{name} را اضافه کنید.
- verify_cert
- تعیین بررسی یا عدم بررسی گواهی HTTPS. پیشفرض true است.
گزینههای فهرست (List Options)
گزینههای زیر برای منابعی که یک فهرست برمیگردانند اعمال میشوند. برای بررسی پشتیبانی از آنها، به جدول منابع مربوطه مراجعه کنید.
- include_regex
- تنها رشتههای نسخهای را در نظر میگیرد که با عبارت باقاعده دادهشده مطابقت داشته باشند. کل رشته باید با regex مطابقت داشته باشد. حتماً در صورت نیاز از .* استفاده کنید!
- exclude_regex
- رشتههای نسخهای که با عبارت باقاعده دادهشده مطابقت دارند را در نظر نمیگیرد. کل رشته باید با regex مطابقت داشته باشد. حتماً در صورت نیاز از .* استفاده کنید! اولویت این گزینه از include_regex بالاتر است؛ بدین معنا که اگر با این الگو مطابقت داشته باشد، حتی در صورت مطابقت با include_regex نیز مستثنی خواهد شد.
- sort_version_key
- مرتبسازی رشته نسخه با استفاده از این تابع کلید. از بین parse_version، vercmp، awesomeversion و portage انتخاب کنید. مقدار پیشفرض parse_version است. parse_version از یک نسخه قدیمی pkg_resources.parse_version استفاده میکند. vercmp از pyalpm.vercmp استفاده میکند. awesomeversion از awesomeversion https://github.com/ludeeus/awesomeversion استفاده میکند. portage از portage.versions.vercmp استفاده میکند.
- ignored
- رشتههای نسخهای که صریحاً نادیده گرفته میشوند و با فاصله از هم جدا شدهاند. این گزینه میتواند برای جلوگیری از نسخههای نادرست شناختهشده مفید باشد، تا نسخههای جدیدتر توسط نسخههای قدیمی معیوب "بازنویسی" نشوند.
source = "regex"
جستجو در یک صفحه وب مشخص برای یافتن رشته نسخه. این نوع یافتن نسخه دارای فیلدهای زیر است:
- url
- نشانی URL صفحه وب برای واکشی.
- encoding
- (اختیاری) کدگذاری نویسههای صفحه وب، در صورتی که latin1 مناسب نباشد.
- regex
- یک عبارت
باقاعده
برای یافتن
رشته نسخه.
میتواند دارای صفر یا یک گروه تطبیق (capture group) باشد. گروه تطبیق یا کل تطابق، رشته نسخه در نظر گرفته میشود.
هنگامی که چندین رشته نسخه پیدا شود، بزرگترین مقدار از میان آنها انتخاب میگردد.
- post_data
- (اختیاری) در صورت وجود، به جای درخواست GET از یک درخواست POST استفاده خواهد شد. این مقدار باید رشتهای شامل بدنه کامل درخواست باشد. کدگذاری رشته را میتوان با استفاده از گزینه post_data_type مشخص کرد.
- post_data_type
- (اختیاری) مقدار Content-Type بدنه درخواست (post_data) را مشخص میکند. بهطور پیشفرض، این مقدار application/x-www-form-urlencoded است.
این منبع از List Options پشتیبانی میکند.
جستجو در یک سرآیند HTTP
source = "httpheader"
ارسال یک درخواست HTTP و جستجو در یک سرآیند مشخص.
- url
- نشانی URL درخواست HTTP.
- header
- (اختیاری) سرآیندی که باید بررسی شود. مقدار پیشفرض Location است. سرآیند مفید دیگر Content-Disposition میباشد.
- regex
- یک عبارت
باقاعده
برای یافتن
رشته نسخه.
میتواند دارای صفر یا یک گروه تطبیق باشد. گروه تطبیق یا کل تطابق، رشته نسخه خواهد بود.
هنگامی که چندین رشته نسخه پیدا شود، بزرگترین مقدار از میان آنها انتخاب میگردد.
- method
- (اختیاری) متد HTTP مورد استفاده. پیشفرض HEAD است.
- follow_redirects
- (اختیاری) تعیین اینکه آیا ریدایرکتهای 3xx در HTTP دنبال شوند یا خیر. پیشفرض false است. اگر در حال بررسی سرآیند Location هستید، نباید این مقدار را تغییر دهید.
جستجو با یک تجزیهکننده HTML
source = "htmlparser"
ارسال یک درخواست HTTP و جستجو در بدنه با استفاده از یک xpath مشخص.
- url
- نشانی URL درخواست HTTP.
- xpath
- یک عبارت xpath برای یافتن رشته نسخه.
- is_xml
- برای استفاده از یک تجزیهکننده XML به جای HTML، روی true تنظیم شود.
- post_data
- (اختیاری) در صورت وجود، به جای GET از یک درخواست POST استفاده خواهد شد. این مقدار باید رشتهای شامل بدنه کامل درخواست باشد. کدگذاری رشته را میتوان با استفاده از گزینه post_data_type مشخص کرد.
- post_data_type
- (اختیاری) مقدار Content-Type بدنه درخواست (post_data) را مشخص میکند. بهطور پیشفرض، این مقدار application/x-www-form-urlencoded است.
این منبع میتواند یک فید RSS را بدین صورت تجزیه کند:
[ProxmoxVE] source = "htmlparser" url = "https://my.proxmox.com/en/announcements/tag/proxmox-ve/rss" xpath = "//item/title" is_xml = true from_pattern = 'Proxmox VE ([\d.]+) released!' to_pattern = '\1'
نکته:
source = "jq"
یک درخواست HTTP ارسال کرده و بدنهٔ آن را با یک فیلتر مشخص jq جستجو میکند.
- url
- نشانی اینترنتی (URL) درخواست HTTP.
- filter
- یک فیلتر jq که برای یافتن رشتهٔ نسخه استفاده میشود.
- post_data
- (اختیاری) در صورت وجود، یک درخواست POST (به جای GET) استفاده خواهد شد. مقدار باید رشتهای شامل بدنهٔ کامل درخواست باشد. کدگذاری این رشته را میتوان با استفاده از گزینهٔ post_data_type مشخص کرد.
- post_data_type
- (اختیاری) مقدار Content-Type بدنهٔ درخواست (post_data) را تعیین میکند. مقدار پیشفرض، application/json است.
این منبع از گزینههای فهرست (List Options) پشتیبانی میکند.
نکته:
یافتن با یک دستور
source = "cmd"
استفاده از یک خط فرمان شل برای دریافت نسخه. خروجی ابتدا پیراسته (strip) میشود، بنابراین نویسههای خط جدید انتهایی مشکلی ایجاد نمیکنند.
- cmd
- خط فرمانی که باید استفاده شود. این دستور با شل استاندارد سیستم (یعنی /bin/sh) اجرا خواهد شد.
بررسی AUR
source = "aur"
بررسی مخزن کاربران آرچ https://aur.archlinux.org برای بهروزرسانیها. تنظیمات پروکسی بهازای هر مورد برای این منبع کار نمیکند زیرا چندین مورد در یک درخواست دستهبندی میشوند.
- aur
- نام بسته در AUR. در صورت خالی بودن، از نام نرمافزار (table name) استفاده میشود.
- strip_release
- حذف بخش انتشار (release).
- use_last_modified
- افزودن زمان آخرین تغییر به نسخه.
بررسی GitHub
source = "github"
بررسی GitHub https://github.com برای بهروزرسانیها. نسخهٔ بازگرداندهشده در قالب تاریخ %Y%m%d.%H%M%S است، مانند 20130701.012212، مگر اینکه از use_latest_release، use_max_tag یا use_max_release استفاده شود. موارد زیر را ببینید.
- github
- مخزن github به همراه نام پدیدآورنده، مانند lilydjwg/nvchecker.
- branch
- کدام شاخه دنبال شود؟ پیشفرض: شاخهٔ پیشفرض مخزن.
- path
- تنها کامیتهایی بازگردانده میشوند که شامل این مسیر فایل باشند.
- host
- نام میزبان (hostname) برای نمونهٔ میزبانیشدهٔ شخصی GitHub.
- use_latest_release
- برای بررسی
آخرین
انتشار (release)
در GitHub، این
گزینه را
روی true
تنظیم کنید.
انتشارهای GitHub با برچسبهای گیت یکسان نیستند. شما در صفحهٔ انتشارات برای چنین انتشارهایی نامهای نسخهٔ بزرگ و توضیحات را مشاهده میکنید، مانند مورد zfsonlinux/zfs در https://github.com/zfsonlinux/zfs/releases، و موارد کوچکی مانند مورد nvchecker در https://github.com/lilydjwg/nvchecker/releases صرفاً برچسبهای گیت هستند که باید برای آنها از use_max_tag در زیر استفاده شود.
به جای تاریخ، نام برچسبِ انتشار را بازمیگرداند. (به دلایل تاریخی نام انتشار بازگردانده نمیشود. برای تغییر این رفتار، مورد زیر را ببینید.)
- use_max_release
- برای بررسی بالاترین انتشار در GitHub، این گزینه را روی true تنظیم کنید. این گزینه بزرگترین مورد مرتبشده بر اساس گزینهٔ sort_version_key را بازمیگرداند. به جای تاریخ، نام برچسب بازگردانده خواهد شد.
- use_release_name
- هنگامی که use_latest_release یا use_max_release برابر با true باشد، تنظیم این گزینه روی true باعث میشود nvchecker به جای نام برچسب، نام انتشار را بازگرداند.
- include_prereleases
- هنگامی که
use_latest_release یا use_max_release
برابر با true
باشد، این
گزینه را
روی true
تنظیم کنید
تا
پیشانتشارها
نیز لحاظ
شوند.
این کار نامهای انتشار (نه نام برچسبها) را بازمیگرداند.
این گزینه به توکن نیاز دارد زیرا از رابط برنامهنویسی v4 GraphQL API استفاده میکند.
- use_latest_tag
- برای بررسی
آخرین
برچسب در GitHub،
این گزینه
را روی true
تنظیم کنید.
این گزینه به توکن نیاز دارد زیرا از رابط برنامهنویسی v4 GraphQL API استفاده میکند.
- query
- هنگامی که use_latest_tag برابر با true است، این گزینه یک پرسوجو برای برچسب تعیین میکند. روش تطبیق دقیق توسط GitHub مستندسازی نشده است.
- use_max_tag
- برای بررسی بالاترین برچسب در GitHub، این گزینه را روی true تنظیم کنید. برخلاف use_max_release، این گزینه هم برچسبهای نشانهدار (annotated) و هم برچسبهای سبک (lightweight) را شامل میشود و بزرگترین مورد مرتبشده با گزینهٔ sort_version_key را بازمیگرداند. به جای تاریخ، نام برچسب بازگردانده خواهد شد.
- token
- یک توکن احراز هویت شخصی که برای فراخوانی API استفاده میشود.
ممکن است برای استفاده از use_latest_tag، include_prereleases یا ارسال درخواستهای مکررتر نسبت به حالت ناشناس، به یک توکن احراز هویت نیاز باشد.
جهت تنظیم توکن احراز هویت، میتوانید موارد زیر را پیکربندی کنید:
- گزینهٔ token
- یک ورودی در keyfile برای میزبان (مانند github.com)
- یک ورودی در فایل netrc برای میزبان
این منبع در صورت تنظیم بودن use_max_tag یا use_max_release از گزینههای فهرست (List Options) پشتیبانی میکند..SS "متادادههای RichResult (RichResult metadata)"
در صورت موجود بودن در پاسخهای دریافتی از GitHub API، این منبع فیلدهای اختیاری RichResult زیر را مقداردهی میکند. هیچ درخواست API اضافهای صرفاً برای دریافت اطلاعات برچسب زمانی (timestamp) ارسال نمیشود.
| حالت (Mode) | creation_time | revision_creation_time |
| کامیت/مسیر پیشفرض | 0.0 • 2 168u | برچسب زمانی کامیت |
| use_latest_release | زمان انتشار نسخه (release) | 0.0 • 2 168u |
| use_max_release | زمان انتشار نسخه (release) | 0.0 • 2 168u |
| use_latest_release + | ||
| include_prereleases | زمان انتشار نسخه (release) | برچسب زمانی کامیت |
| use_latest_tag | 0.0 • 2 168u | زمان ایجاد برچسب (annotated tags) یا برچسب زمانی کامیت (lightweight tags) |
| use_max_tag | 0.0 • 2 168u | 0.0 • 2 168u |
| بررسی Gitea | ||
| 0.0 | ||
| 3.5 | ||
| source = "gitea" | ||
| 168u | ||
| 168u | ||
| Gitea https://gitea.com را برای بهروزرسانیها بررسی میکند. نگارش بازگردانده شده در قالب تاریخ %Y%m%d است، به عنوان مثال 20130701، مگر اینکه از use_max_tag استفاده شده باشد. به بخش زیر مراجعه کنید. | ||
| 0.0 | ||
| gitea | ||
| مخزن gitea به همراه نام نویسنده/مالک، مانند gitea/tea. | ||
| branch | ||
| کدام شاخه دنبال شود؟ پیشفرض: شاخهٔ پیشفرض مخزن است. | ||
| use_max_tag | ||
| این گزینه را روی true تنظیم کنید تا بیشترین تگ در Gitea بررسی شود. بزرگترین مورد مرتبشده بر اساس نسخهٔ قدیمی pkg_resources.parse_version بازگردانده خواهد شد. به جای تاریخ، نام تگ بازگردانده میشود. | ||
| use_latest_release | ||
| این گزینه را روی true تنظیم کنید تا نام آخرین انتشار در gitea بررسی شود. | ||
| انتشارهای Gitea با تگهای git یکی نیستند. شما نام نگارشهای بزرگ و توضیحات را در صفحهٔ انتشارات برای چنین مواردی خواهید دید، به عنوان مثال ciberandy/qiv در https://codeberg.org/ciberandy/qiv/releases. | ||
| host | ||
| نام میزبان (hostname) برای نمونهٔ میزبانیشده توسط خود (self-hosted) از Gitea. | ||
| token | ||
| توکن احراز هویت Gitea که برای فراخوانی API استفاده میشود. | ||
| 168u | ||
| جهت تعیین توکن احراز هویت، میتوانید موارد زیر را تنظیم کنید: | ||
| 0.0 | ||
| • 2 | ||
| گزینهٔ token | ||
| • 2 | ||
| یک مدخل در keyfile برای میزبان (مانند gitea.com) | ||
| • 2 | ||
| یک مدخل در فایل netrc خود برای میزبان | ||
| 168u | ||
| این منبع در صورت تنظیم بودن use_max_tag، از List Options پشتیبانی میکند. | ||
| بررسی Gogs / Forgejo / Codeberg | ||
| لطفاً از منبع "gitea" در بالا استفاده کنید. Gitea یک انشعاب از Gogs https://gogs.io است. | ||
| Forgejo https://forgejo.org یک انشعاب از Gitea است. Codeberg یک ارائهدهندهٔ میزبانی کد است که از Forgejo استفاده میکند. آنها از همان نقاط پایانی API مشترکی که nvchecker استفاده میکند بهره میبرند. | ||
| همچنین میتوانید منبع عمومی "git" را نیز امتحان کنید. | ||
| بررسی BitBucket | ||
| 0.0 | ||
| 3.5 | ||
| source = "bitbucket" | ||
| 168u | ||
| 168u | ||
| BitBucket https://bitbucket.org را برای بهروزرسانیها بررسی میکند. نگارش بازگردانده شده در قالب تاریخ %Y%m%d است، مانند 20130701، مگر اینکه از use_max_tag استفاده شده باشد. به بخش زیر مراجعه کنید. | ||
| 0.0 | ||
| bitbucket | ||
| مخزن bitbucket به همراه نام نویسنده/مالک، مانند lilydjwg/dotvim. | ||
| branch | ||
| کدام شاخه دنبال شود؟ پیشفرض: شاخهٔ پیشفرض مخزن است. | ||
| use_max_tag | ||
| این گزینه را روی true تنظیم کنید تا بیشترین تگ در BitBucket بررسی شود. بزرگترین مورد مرتبشده بر اساس نسخهٔ قدیمی pkg_resources.parse_version بازگردانده خواهد شد. به جای تاریخ، نام تگ بازگردانده میشود. | ||
| use_sorted_tags | ||
| اگر روی true تنظیم شود، تگها بر اساس کلیدهای query و sort پرسوجو و مرتب میشوند. به جای تاریخ، نام تگ بازگردانده خواهد شد. | ||
| query | ||
| یک رشتهٔ پرسوجو برای پالایش تگها در صورت تنظیم بودن use_sorted_tags (برای مشاهدهٔ مثالها به اینجا https://developer.atlassian.com/cloud/bitbucket/rest/intro/#querying مراجعه کنید). نیازی به گریز دادن (escape) این رشته نیست. | ||
| sort | ||
| فیلدی که برای مرتبسازی تگها در صورت تنظیم بودن use_sorted_tags استفاده میشود (برای مشاهدهٔ مثالها به اینجا https://developer.atlassian.com/cloud/bitbucket/rest/intro/#filtering مراجعه کنید). پیشفرض -target.date است (تگها را به ترتیب نزولی تاریخ مرتب میکند). | ||
| max_page | ||
| چند صفحه برای بیشترین تگ جستجو شود؟ پیشفرض 3 است. این گزینه زمانی کار میکند که use_max_tag تنظیم شده باشد. | ||
| 168u | ||
| این منبع در صورت تنظیم بودن use_max_tag یا use_sorted_tags، از List Options پشتیبانی میکند..SS بررسی GitLab | ||
| 0.0 | ||
| 3.5 | ||
| source = "gitlab" | ||
| 168u | ||
| 168u | ||
| بررسی GitLab https://gitlab.com برای بهروزرسانیها. نسخهٔ بازگرداندهشده در قالب تاریخ %Y%m%d است، مانند 20130701، | ||
| مگر اینکه use_max_tag استفاده شود. بخش زیر را ببینید. | ||
| 0.0 | ||
| gitlab | ||
| مخزن gitlab، همراه با نویسنده، مانند Deepin/deepin-music. | ||
| branch | ||
| کدام شاخه ردیابی شود؟ | ||
| use_max_tag | ||
| این گزینه را روی true تنظیم کنید تا بیشترین برچسب (max tag) در GitLab بررسی شود. بزرگترین مورد مرتبشده با pkg_resources.parse_version قدیمی بازگردانده میشود. به جای تاریخ، نام برچسب بازگردانده خواهد شد. | ||
| host | ||
| نام میزبان (hostname) برای نمونهٔ خودمیزبان (self-hosted) گیتلب. | ||
| token | ||
| توکن احراز هویت GitLab مورد استفاده برای فراخوانی API. | ||
| 168u | ||
| برای تنظیم یک توکن احراز هویت، میتوانید موارد زیر را تنظیم کنید: | ||
| 0.0 | ||
| • 2 | ||
| گزینهٔ token | ||
| • 2 | ||
| یک مدخل در keyfile برای میزبان (مانند gitlab.com) | ||
| • 2 | ||
| یک مدخل در فایل netrc خود برای میزبان | ||
| 168u | ||
| این منبع در صورت تنظیم بودن use_max_tag از List Options پشتیبانی میکند. | ||
| متادادهٔ RichResult | ||
| در صورت موجود بودن از پاسخهای فعلی API گیتلب، این منبع فیلدهای اختیاری RichResult زیر را پر میکند. هیچ درخواست API اضافی صرفاً برای بازیابی اطلاعات برچسب زمانی ارسال نمیشود. | ||
| box center; | ||
| l|l|l. | ||
| حالت | creation_time | revision_creation_time |
| کامیت پیشفرض | 0.0 • 2 168u | برچسب زمانی کامیت |
| use_max_tag | زمان ایجاد برچسب | برچسب زمانی کامیت |
بررسی PyPI
source = "pypi"
بررسی PyPI https://pypi.python.org برای بهروزرسانیها. انتشارهای حذفشده (yanked) نادیده گرفته میشوند.
- pypi
- نام استفادهشده در PyPI، مانند PySide.
- use_pre_release
- مشخص میکند که آیا پیشانتشارها پذیرفته شوند یا خیر. مقدار پیشفرض false است.
این منبع از List Options پشتیبانی میکند.
متادادهٔ RichResult:
| حالت | creation_time | revision_creation_time |
| تمام نسخهها | اولین زمان در دسترس برای بارگذاری فایل | 0.0 • 2 168u |
نکته:
source = "gems"
بررسی RubyGems https://rubygems.org برای بهروزرسانیها.
- gems
- نام استفادهشده در RubyGems، مانند sass.
این منبع از List Options پشتیبانی میکند.
بررسی NPM Registry
source = "npm"
بررسی NPM Registry https://registry.npmjs.org برای بهروزرسانیها.
- npm
- نام استفادهشده در NPM Registry، مانند coffee-script.
برای پیکربندی اینکه از کدام مخزن پرسوجو شود، گزینهای در افزونهٔ منبع در دسترس است. میتوانید آن را به این صورت مشخص کنید:
[__config__.source.npm] registry = "https://registry.npm.taobao.org"
بررسی Hackage
source = "hackage"
بررسی Hackage https://hackage.haskell.org برای بهروزرسانیها.
- hackage
- نام استفادهشده در Hackage، مانند pandoc.
بررسی Maven
source = "maven"
بررسی یک مخزن Maven https://maven.apache.org برای بهروزرسانیها.
- repo
- نشانی (URL) مخزن مورد بررسی (پیشفرض: https://repo1.maven.org/maven2).
- group
- شناسهٔ گروه (group) برای مختصات.
- artifact
- شناسهٔ آرتیفکت (artifact) برای مختصات.
source = "cpan"
بررسی MetaCPAN https://metacpan.org برای بهروزرسانیها.
- cpan
- نام مورد استفاده در CPAN، مانند YAML.
بررسی CRAN
source = "cran"
بررسی CRAN https://cran.r-project.org/web/packages برای بهروزرسانیها.
- cran
- نام مورد استفاده در CRAN، مانند xml2.
بررسی Packagist
source = "packagist"
بررسی Packagist https://packagist.org برای بهروزرسانیها.
- packagist
- نام مورد استفاده در Packagist، مانند monolog/monolog.
بررسی crates.io
source = "cratesio"
بررسی crates.io https://crates.io برای بهروزرسانیها. انتشارهای پسگرفتهشده (yanked) نادیده گرفته میشوند.
- cratesio
- نام crate در crates.io، مانند tokio.
- use_pre_release
- پذیرش یا عدم پذیرش پیشانتشار (pre release). مقدار پیشفرض false است.
این منبع از List Options پشتیبانی میکند.
بررسی پایگاهداده محلی Pacman
source = "pacman"
این مورد هنگامی استفاده میشود که nvchecker را روی یک سیستم Arch Linux اجرا میکنید و برنامه همیشه با یک بسته در مخازن پیکربندیشده شما برای Pacman https://wiki.archlinux.org/title/Pacman همگام میماند.
- pacman
- نام بسته برای ارجاع به آن.
- strip_release
- حذف بخش انتشار (release).
source = "archpkg"
این گزینه به شما امکان میدهد بهروزرسانی بستههای رسمی Arch Linux را از طریق https://www.archlinux.org/packages، بدون نیاز به pacman و پایگاههای داده محلی بهروزرسانیشدهی Pacman، رهگیری کنید.
- archpkg
- نام بسته Arch Linux.
- strip_release
- حذف بخش انتشار (release)؛ تنها بخشی که پیش از - میآید بازگردانده میشود.
- provided
- به جای نسخه بسته، نسخهای را که این بسته ارائه میدهد (provides) بازمیگرداند. مقدار آن همان مقداری است که بسته فراهم میکند و strip_release نیز بر آن اعمال میشود. بیشترین کاربرد این مورد برای کتابخانهها است.
بررسی بستههای رسمی Debian Linux
source = "debianpkg"
این گزینه به شما امکان میدهد بهروزرسانی بستههای رسمی Debian Linux را از طریق https://packages.debian.org، بدون نیاز به apt و پایگاه داده محلی بهروزرسانیشدهی APT، رهگیری کنید.
- debianpkg
- نام بسته منبع (source package) در Debian Linux.
- suite
- نام انتشار Debian (مانند jessie، wheezy و غیره؛ پیشفرض: sid).
- strip_release
- حذف بخش انتشار (release).
بررسی بستههای رسمی Ubuntu Linux
source = "ubuntupkg"
این گزینه به شما امکان میدهد بهروزرسانی بستههای رسمی Ubuntu Linux را از طریق https://packages.ubuntu.com، بدون نیاز به apt و پایگاه داده محلی بهروزرسانیشدهی APT، رهگیری کنید.
- ubuntupkg
- نام بسته منبع (source package) در Ubuntu Linux.
- suite
- نام انتشار Ubuntu (مانند xenial، zesty و غیره؛ پیشفرض: None، که به معنی عدم اعمال محدودیت روی suite است).
- strip_release
- حذف بخش انتشار (release).
بررسی Repology
source = "repology"
این گزینه به شما امکان میدهد بهروزرسانیها را از Repology https://repology.org (repology.org) رهگیری کنید.
این منبع از List Options پشتیبانی میکند..SS "بررسی Anitya"
source = "anitya"
این به شما امکان میدهد تا بهروزرسانیها را از Anitya https://release-monitoring.org (release-monitoring.org) رهگیری کنید.
توجه داشته باشید که باید یکی از anitya یا anitya_id مشخص شود؛ در صورتی که هر دو مشخص شده باشند، anitya_id ترجیح داده میشود.
بررسی Android SDK
source = "android_sdk"
این به شما امکان میدهد تا بهروزرسانیهای بستههای Android SDK فهرستشده در sdkmanager --list را رهگیری کنید.
- android_sdk
- پیشوند مسیر بسته. این مقدار با مشخصهٔ path در تمام گرههای <remotePackage> در یک فایل XML مانیفست SDK مطابقت داده میشود. نخستین تطابق برای مقایسهٔ نسخهها استفاده میشود.
- repo
- باید یکی از مقادیر addon یا package باشد. بستهها در addon2-1.xml از addon و بستهها در repository2-1.xml از package استفاده میکنند.
- channel
- کانال هدف را از بین یکی از مقادیر stable، beta، dev یا canary انتخاب کنید. این گزینه همچنین فهرستی جداشده با کاما را برای گزینش از میان چند کانال میپذیرد. برای نمونه، تازهترین نسخهٔ ناپایدار با beta,dev,canary انتخاب میشود. پیشفرض stable است.
- host_os
- سیستمعامل هدف برای بستهٔ رهگیریشده را از بین linux، macosx یا windows انتخاب کنید. پیشفرض linux است. برای بستههای مستقل از سیستمعامل (مانند JARهای جاوا)، از این فیلد صرفنظر میشود.
این منبع از List Options پشتیبانی میکند.
بررسی فریمورک Sparkle
source = "sparkle"
این به شما امکان میدهد تا بهروزرسانیهای برنامههای macOS را که از فریمورک Sparkle استفاده میکنند https://sparkle-project.org رهگیری کنید.
- sparkle
- نشانی اینترنتی (URL) مربوط به appcast در sparkle.
- release_notes_language
- زبان یادداشتهای انتشار برای بازگرداندن در زمان در دسترس بودن یادداشتهای محلیسازیشده (پیشفرض en برای انگلیسی است؛ یادداشتهای انتشار محلیسازینشده بهعنوان رزرو/جایگزین استفاده میشوند).
بررسی Pagure
source = "pagure"
این به شما امکان میدهد تا بهروزرسانیها را از Pagure https://pagure.io بررسی کنید.
این منبع برچسبها (tags) را بازمیگرداند و از List Options پشتیبانی میکند..SS بررسی مخزن APT
source = "apt"
این گزینه امکان ردیابی بهروزرسانیهای یک مخزن دلخواه APT را بدون نیاز به apt و یک پایگاه داده محلی بهروزشدهٔ APT فراهم میکند.
- pkg
- نام بسته باینری APT.
- srcpkg
- نام بسته منبع (سورس) APT.
- mirror
- نشانی اینترنتی (URL) مخزن.
- suite
- نام انتشار مخزن APT (مانند jessie، wheezy و غیره)
- repo
- نام بخش مخزن APT (مانند main، contrib و غیره؛ پیشفرض main است)
- arch
- معماری مخزن (i386، amd64 و غیره؛ پیشفرض amd64 است)
- strip_release
- حذف بخش انتشار (release).
توجه داشته باشید که باید یا pkg و یا srcpkg مشخص شود (نه هر دو)، در غیر این صورت از نام آیتم بهعنوان pkg استفاده خواهد شد.
بررسی مخزن RPM
source = "rpmrepo"
این گزینه امکان بررسی آخرین نگارشهای بسته را در یک مخزن دلخواه RPM با قالب repomd (مورد استفاده توسط مدیر بستههایی مانند dnf در Fedora، RHEL، AlmaLinux و غیره یا zypper در openSUSE) بدون نیاز به ابزارهای محلی RPM فراهم میکند.
- pkg
- نام بسته RPM (میتوانید مانند سایر منابع از rpmrepo نیز استفاده کنید، اما برای شفافیت بیشتر pkg ترجیح داده میشود)
- repo
- نشانی اینترنتی (URL) مخزن (اجباری است، فایل repodata/repomd.xml باید در آنجا قرار داشته باشد)
- arch
- معماری بسته RPM (binary، src، any، x86_64، aarch64 و غیره؛ پیشفرض binary است)
این منبع از List Options پشتیبانی میکند.
نکته:
بررسی مخزن Git
source = "git"
این گزینه امکان بررسی برچسبها (تگها) یا کامیتهای یک شاخه در یک مخزن دلخواه git را فراهم میکند؛ همچنین برای سناریوهایی مانند پروژههای github که برچسبهای بیش از حد زیادی دارند، مفید است.
- git
- نشانی اینترنتی (URL) مخزن Git.
- use_commit
- بازگرداندن هش کامیت به جای برچسبها.
- branch
- هنگامی که use_commit درست (true) باشد، کامیت مربوط به شاخه مشخصشده را به جای شاخه پیشفرض بازمیگرداند.
هنگامی که این منبع برچسبها را بازمیگرداند (use_commit درست نیست)، از List Options پشتیبانی میکند..SS بررسی مخزن Git بدون خط فرمان git با استفاده از pygit2
source = "git_pygit2"
این منبع مشابه منبع git است، اما به جای فراخوانی فایل اجرایی git از pygit2/libgit2 استفاده میکند. این منبع در محیطهایی که بستههای پایتون قابل نصب هستند اما امکان اجرای باینریهای خارجی وجود ندارد، مفید است.
- git
- نشانی URL مخزن Git.
- username
- نام کاربری برای احراز هویت HTTP.
- password_key
- نام کلید مورد استفاده برای بازیابی گذرواژه یا توکن دسترسی از keyfile پیکربندیشده.
- use_commit
- بازگرداندن هش کامیت به جای برچسبها.
- branch
- هنگامی که use_commit درست (true) باشد، کامیت را روی شاخهٔ مشخصشده به جای شاخهٔ پیشفرض بازمیگرداند.
مثال برای یک مخزن خصوصی GitHub:
source = "git_pygit2" git = "https://github.com/example/private-repo.git" username = "x-access-token" password_key = "github"
هنگامی که این منبع برچسبها را بازمیگرداند (use_commit درست نیست)، از List Options پشتیبانی میکند.
نکته:
بررسی مخزن Git بدون خط فرمان git با استفاده از Dulwich
- پیام سیستم: WARNING/2 (usage.rst:, line 1040)
- خط زیر عنوان بسیار کوتاه است.
Check Git repository without git CLI using Dulwich ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
source = "git_dulwich"
این منبع مشابه منبع git است، اما به جای فراخوانی فایل اجرایی git از Dulwich استفاده میکند. این منبع در محیطهایی که بستههای پایتون قابل نصب هستند اما امکان اجرای باینریهای خارجی وجود ندارد، مفید است.
این منبع در حال حاضر از متغیرهای محیطی پروکسی پشتیبانی نمیکند.
- git
- نشانی URL مخزن Git.
- username
- نام کاربری برای احراز هویت HTTP.
- password_key
- نام کلید مورد استفاده برای بازیابی گذرواژه یا توکن دسترسی از keyfile پیکربندیشده.
- use_commit
- بازگرداندن هش کامیت به جای برچسبها.
- branch
- هنگامی که use_commit درست (true) باشد، کامیت را روی شاخهٔ مشخصشده به جای شاخهٔ پیشفرض بازمیگرداند.
مثال برای یک مخزن خصوصی GitHub:
source = "git_dulwich" git = "https://github.com/example/private-repo.git" username = "x-access-token" password_key = "github"
هنگامی که این منبع برچسبها را بازمیگرداند (use_commit درست نیست)، از List Options پشتیبانی میکند.
نکته:
source = "mercurial"
این مورد امکان بررسی تگهای یک مخزن دلخواه mercurial (hg) را فراهم میکند.
- mercurial
- نشانی (URL) مخزن Mercurial.
این منبع تگها را برمیگرداند و از List Options پشتیبانی میکند.
بررسی رجیستری کانتینر
source = "container"
این مورد امکان بررسی تگهای ایمیجها روی یک رجیستری کانتینر مانند Docker را فراهم میکند.
- container
- مسیر (و تگ)
ایمیج
کانتینر.
برای
ایمیجهای
رسمی Docker، از
فضای نام library/
استفاده
کنید (مانند
library/python).
اگر تگی مشخص نشده باشد، آخرین تگ موجود (مرتبشده بر اساس نام تگ) را بررسی میکند، در غیر این صورت زمان بهروزرسانی تگ را بررسی میکند.
- registry
- میزبان رجیستری کانتینر. پیشفرض: docker.io
موارد registry و container میزبان و مسیری هستند که در دستور pull استفاده میشوند. توجه داشته باشید که دستور docker اجازه میدهد بخشهایی از نام کانتینر حذف شوند، در حالی که این افزونه به نام کامل نیاز دارد. اگر بخش میزبان حذف شده است، از docker.io استفاده کنید، و اگر اسلشی در مسیر وجود ندارد، library/ را به ابتدای مسیر اضافه نمایید. در اینجا چند مثال آورده شده است:
| دستور pull | registry | container |
| docker pull quay.io/prometheus/node-exporter | quay.io | prometheus/node-exporter |
| docker pull quay.io/prometheus/node-exporter:master | quay.io | prometheus/node-exporter:master |
| docker pull openeuler/openeuler | docker.io | openeuler/openeuler |
| docker pull openeuler/openeuler:20.03-lts | docker.io | openeuler/openeuler:20.03-lts |
| docker pull python | docker.io | library/python |
| docker pull python:3.11 | docker.io | library/python:3.11 |
اگر تگی مشخص نشده باشد، این منبع تگها را برمیگرداند و از List Options پشتیبانی میکند..SS بررسی پایگاهداده ALPM
source = "alpm"
بررسی بهروزرسانیهای بسته در یک پایگاهداده محلی ALPM.
- alpm
- نام بسته.
- repo
- نام مخزن بستهای که بسته در آن قرار دارد. در صورت مشخص نشدن، nvchecker از مقدار repos استفاده خواهد کرد؛ به بخش زیر مراجعه کنید.
- repos
- آرایهای از مخازن احتمالی که بسته ممکن است در آنها قرار داشته باشد؛ nvchecker از نخستین مخزنی که حاوی بسته باشد استفاده خواهد کرد. در صورت مشخص نشدن، به ترتیب از core، extra و multilib استفاده خواهد شد.
- dbpath
- مسیر دایرکتوری پایگاهداده ALPM. پیشفرض: /var/lib/pacman. باید پایگاهداده را خودتان بهروزرسانی کنید.
- strip_release
- حذف بخش انتشار (release)، تنها بخش پیش از - برگردانده میشود.
- provided
- به جای نسخه بسته، نسخهای که این بسته ارائه میدهد برگردانده میشود. مقدار آن چیزی است که بسته فراهم میکند (provides) و strip_release نیز اعمال میشود. این گزینه برای کتابخانهها بهترین کاربرد را دارد.
نکته:
بررسی پایگاهداده فایلهای ALPM
source = "alpmfiles"
جستجوی فایلهای بسته در یک پایگاهداده محلی فایلهای ALPM. نیازی به نصب بودن بسته نیست. این گزینه میتواند برای بررسی نسخههای کتابخانه مشترک مفید باشد، در صورتی که بسته آنها را در provides خود فهرست نکرده باشد.
- pkgname
- نام بسته.
- filename
- عبارت باقاعده برای مسیر فایل. اگر شامل یک گروه منطبق باشد، آن گروه برگردانده میشود. در غیر این صورت، کل مسیر فایل برگردانده میشود. مسیرها دارای اسلش ابتدایی نیستند. برای نمونه، usr/lib/libuv\\.so\\.([^.]+) با نسخه اصلی (major) کتابخانه مشترک libuv مطابقت دارد.
- repo
- نام مخزن بستهای که بسته در آن قرار دارد. در صورت مشخص نشدن، تمام مخازن جستجو میشوند.
- strip_dir
- حذف دایرکتوری از مسیر پیش از تطبیق. مقدار پیشفرض false است.
- dbpath
- مسیر دایرکتوری پایگاهداده ALPM. پیشفرض: /var/lib/pacman. باید پایگاهداده را خودتان با دستور pacman -Fy بهروزرسانی کنید.
این منبع دستور pacman -Flq ... را اجرا میکند. برای پیکربندی تعداد نمونههای همروند در حال اجرای pacman:
[__config__.source.alpmfiles] concurrency = 2
مقدار پیشفرض 2 است. دستور pacman -Flq ... حافظه زیادی مصرف میکند، بنابراین مراقب باشید.
بررسی Open Vsx
source = "openvsx"
بررسی Open Vsx https://open-vsx.org برای بهروزرسانیها.
- openvsx
- شناسه یکتای (Unique Identifier) افزونه در open-vsx.org، برای نمونه ritwickdey.LiveServer.
source = "vsmarketplace"
بررسی Visual Studio Code Marketplace https://marketplace.visualstudio.com/vscode برای دریافت بهروزرسانیها.
- vsmarketplace
- شناسهٔ یکتای افزونه در marketplace.visualstudio.com/vscode، مانند ritwickdey.LiveServer.
بررسی بستهها و ماژولهای Go
source = "go"
بررسی بستهها و ماژولهای Go در https://pkg.go.dev برای دریافت بهروزرسانیها.
- go
- نام بسته یا ماژول Go، مانند github.com/caddyserver/caddy/v2/cmd.
بررسی مخزن opam
source = "opam"
این منبع امکان بررسی آخرین نسخههای بسته در یک مخزن opam https://opam.ocaml.org/doc/Manual.html#Repositories دلخواه را بدون نیاز به ابزار خط فرمان opam برای شما فراهم میکند.
- pkg
- نام بستهٔ opam
- repo
- نشانی اینترنتی (URL) مخزن (اختیاری؛ در صورت مشخص نشدن، از مخزن پیشفرض https://opam.ocaml.org استفاده میشود)
این منبع از List Options پشتیبانی میکند.
بررسی Snapcraft
source = "snapcraft"
این منبع امکان بررسی آخرین نسخههای بسته در Snapcraft https://snapcraft.io را فراهم میکند.
ترکیب نتایج سایر مدخلها
source = "combiner"
این منبع میتواند نتایج حاصل از سایر مدخلها را با یکدیگر ترکیب کند.
مثال:
[entry-1] source = "cmd" cmd = "echo 1" [entry-2] source = "cmd" cmd = "echo 2" [entry-3] source = "combiner" from = ["entry-1", "entry-2"] format = "$1-$2"
source = "manual"
این قابلیت به شما امکان میدهد نسخه را بهصورت دستی مشخص کنید (شاید به این دلیل که میخواهید هر انتشار را پیش از رسیدن به اسکریپت تأیید کنید).
- manual
- رشته نسخه.
گسترش
امکان گسترش منابع پشتیبانیشده با نوشتن افزونهها وجود دارد. برای مستندات به plugin مراجعه کنید.
| 2026-08-15 | 2.22 |