لاراول ۱۳.۳۰ کنترل دستور dev رو میده دستت
خلاصهٔ کاملتر
دستور php artisan dev همهٔ پروسههای محیط توسعه رو با یه فرمان بالا میاره: پیشفرضهای فریمورک، چیزهایی که پکیجها از طریق سرویسپروایدر اضافه کردن، و هر چی خود اپلیکیشن ثبت کرده. دردسرش اینه که هر پکیجی میتونه یه پروسه به این لیست سنجاق کنه. تو مقالهٔ لاراولنیوز اومده که لاراول ۱۳.۳۰ دو تا متد جدید روی کلاس DevCommands اضافه کرده تا بتونی از این دو گروه بزنی بیرون.
با withoutVendorCommands() و withoutDefaultCommands() همهچی خاموش میشه و بعدش فقط همونی اجرا میشه که خودت تو boot() سرویسپروایدر تعریف کردی:
use Illuminate\Foundation\DevCommands;
DevCommands::withoutVendorCommands();
DevCommands::withoutDefaultCommands();
DevCommands::artisan('serve', 'server');
DevCommands::node('dev', 'vite');اگه انقدر سفتوسخت نمیخوای، only() و except() هم هستن. مثلاً میتونی هیچ دستوری از پکیجها اجرا نشه ولی همهٔ پیشفرضهای فریمورک بهجز logs سر جاش بمونه. خود پیشفرضها از registerDefaults() میان و فعلاً چهار تا پروسهان: server، queue، logs (وقتی pcntl_fork() موجود باشه) و vite (وقتی پروژه package.json داشته باشه).
برای اینکه ببینی الان چی قراره اجرا بشه، دستور php artisan dev:list لیست پروسهها رو با دستور کاملشون و اینکه از کدوم سرویسپروایدر ثبت شدن نشون میده. فلگ --json هم همون خروجی رو به شکل JSON میده که به درد ایجنتها میخوره. این قابلیت رو Jack Bayliss تو پیآر شمارهٔ ۶۱۳۴۴ اضافه کرده و بخشی از انتشار لاراول ۱۳.۳۰ هست.
نکات کلیدی:
- دو متد جدید DevCommands::withoutVendorCommands() و DevCommands::withoutDefaultCommands() تو لاراول ۱۳.۳۰
- only() و except() برای فیلتر ریزتر، مثلاً حذف فقط logs
- چهار پروسهٔ پیشفرض فریمورک: server، queue، logs و vite
- php artisan dev:list لیست پروسهها رو نشون میده و فلگ --json همون رو ماشینخوان میکنه
- مشارکتکننده: Jack Bayliss تو پیآر ۶۱۳۴۴




