1.4 আপগ্রেড গাইড

আপগ্রেড করার আগে ব্যাকআপ নিতে ভুলবেন এবং নিম্নলিখিত কমান্ড চালান
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install

লক্ষ্য করুন
যদি আপগ্রেড করা না যায় তাহলে সম্ভাব্যতঃ আপনি কোম্পোজার প্রক্সি ব্যবহার করছেন, তাদের অফিসিয়াল ডাটা সোর্স ব্যবহার করতে composer config -g --unset repos.packagist কমান্ড ব্যবহার করুন।

ফিচার এবং পরিবর্তন

অ্যাপ্লিকেশন প্লাগইন

1.4 সংস্করণ অ্যাপ্লিকেশন প্লাগইন সাপোর্ট করে, বিস্তারিত দেখুন অ্যাপ্লিকেশন প্লাগইন

স্বয়ংক্রিয় রাউট

1.4 সংস্করণ পছন্দসই বিভিন্ন জটিল কন্ট্রোলার ডিরেক্টরি নিয়ম সমর্থন করে, উদাহরণস্বরূপ

app
app
├── admin
│   └── v1
│       └── v2
│           └── v3
│               └── controller
│                   └── Index.php
└── controller
    ├── v1
    │   └── Index.php
    └── v2
        └── v3
            └── Index.php

অর্থাৎ webman/auto-route প্লাগইন আর প্রয়োজন নেই।

কন্ট্রোলার রিইউজ সুইচ

1.4 সংস্করণে কন্ট্রোলার রিইউজ বন্ধ করতে দেয়া হয়, config/app.php ফাইলে 'controller_reuse' => false, সেট করার মাধ্যমে, অর্থাৎ প্রতি অনুরোধে একটি নতুন কন্ট্রোলার পুনরায় প্রক্রিয়াজাত করা হবে, অর্থাৎ প্রতিটি অনুরোধ করা হবে উক্ত কন্ট্রোলারের __construct() কনস্ট্রাক্টরটি চালিয়ে প্রতিটি রিকুয়েস্টের জন্য। ডেভেলপাররা কনস্ট্রাক্টরে প্রতিটি রিকুয়েস্টের পূর্বে কিছু প্রারম্ভিক কাজ করার জন্য ব্যবহার করতে পারেন।

কন্ট্রোলার রিইউজ বন্ধ করা যায়, তাই webman/action-hook প্লাগইনের প্রয়োজন নেই।

এইচটিটিপি সার্ভিস অন এর মুমূল্যে

1.4 সংস্করণ এইচটিটিপি সার্ভিস চালু করার সুযোগ প্রদান করে।
স্লো বিজনেস প্রসেসিং এর জন্য

ভিউ ফাইল কনফিগারেশন

সাফিক কেবল view.php এর বিকল্পগুলি কনফিগার করাতে পারি।
যেহেতু সাপোর্ট করা হয় না

use support\view\Raw;
return [
    'handler' => Raw::class,
    'view_suffix' => '.php'
];

সঠিক ব্যবহার

use support\view\Raw;
return [
    'handler' => Raw::class,
    'options' => [
        'view_suffix' => '.php'
    ]
];

সেশন হ্যান্ডলার নেমস্পেস পরিবর্তন

webman 1.4.0 থেকে SessionHandler ক্লাসের নেমস্পেস পরিবর্তন করেছে, যা পূর্বে

use Webman\FileSessionHandler;  
use Webman\RedisSessionHandler;  
use Webman\RedisClusterSessionHandler;  

থেকে

use Webman\Session\FileSessionHandler;  
use Webman\Session\RedisSessionHandler;  
use Webman\Session\RedisClusterSessionHandler;

পরিবর্তন করা হয়েছে।

যতটুকু সারানোর পর, Webman\FileSessionHandler ক্লাসটি এখনও অস্থায়ীভাবে বাইরে রাখা হয়েছে, ভবিষ্যৎ সংস্করণে এটি পূর্ণভাবে সরানো হবে।

এই পরিবর্তনটি config/session.php ফাইলের 'handler' কনফিগারেশনে প্রভাব ফেলে।