বাতিঘর v3 মাইগ্রেশন গাইড

এই নির্দেশিকাটি Lighthouse v2 ব্যবহারকারীদের জন্য যারা:

  • নোড বা কমান্ড লাইন থেকে লাইটহাউস চালান।
  • Lighthouse এর JSON আউটপুট উপর নির্ভর করুন.

যদি এইগুলি আপনার ক্ষেত্রে প্রযোজ্য না হয়, তাহলে Lighthouse চালানোর জন্য আপনার কর্মপ্রবাহ বেশিরভাগই একই। নতুন বৈশিষ্ট্য এবং পরিবর্তনগুলির একটি ওভারভিউ জন্য Lighthouse 3.0 ঘোষণা করা দেখুন।

আমন্ত্রণ পরিবর্তন

লাইটহাউস এখন ডিফল্টভাবে সিমুলেটেড পারফরম্যান্স গণনা করে এবং থ্রটলিং সেটিংস ব্যাপকভাবে পরিবর্তন করা হয়েছে।

CLI পতাকা

দৃশ্যকল্প v2 পতাকা v3 পতাকা
DevTools 3G থ্রটলিং কোনটিই নয় (ডিফল্ট আচরণ) --throttling-method=devtools
থ্রটলিং নেই --disable-network-throttling --disable-cpu-throttling --throttling-method=provided
নেটওয়ার্ক থ্রটলিং, সিপিইউ থ্রটলিং নেই --disable-cpu-throttling --throttling-method=devtools --throttling.cpuSlowdownMultiplier=1
পারফরমেন্স অডিট চালান --perf --preset=perf
মিক্সড কন্টেন্ট অডিট চালান --mixed-content --preset=mixed-content

নোড মডিউল

Lighthouse v3-এ, নোড মডিউল CLI-এর মতো একই কনফিগারেশন বিকল্প গ্রহণ করে। এটি একটি ব্রেকিং পরিবর্তন এই অর্থে যে এই বিকল্পগুলির অনেকগুলিকে v2 এ উপেক্ষা করা হয়েছিল, যেখানে এখন তারা আসলে লাইটহাউস কীভাবে চলে তা প্রভাবিত করবে৷

const fs = require('fs');
const lighthouse = require('lighthouse');

async function run() {
  // `onlyCategories` was previously only available as a config setting.
  // `output` was previously only available in CLI.
  const flags = {onlyCategories: ['performance'], output: 'html'};
  const html = (await lighthouse('https://google.com/', flags)).report;
  fs.writeFileSync('report.html', html);
}

আউটপুট পরিবর্তন

JSON আউটপুটে নতুন, শীর্ষ-স্তরের বিন্যাস

Lighthouse v3 যে JSON অবজেক্টটি দেয় তাতে এখন 3টি শীর্ষ-স্তরের বৈশিষ্ট্য রয়েছে:

  • lhr নিরীক্ষার ফলাফল। "বাতিঘর ফলাফল" এর জন্য সংক্ষিপ্ত। এটি মূলত v2-এ শীর্ষ-স্তরের অবজেক্ট ছিল, কিন্তু v3 এই বস্তুর আকৃতিতেও ব্রেকিং পরিবর্তনগুলি প্রবর্তন করে। ফলাফল বস্তুর পরিবর্তন দেখুন।
  • artifacts অডিট করার সময় Chrome থেকে সংগৃহীত ডেটা। এটি পূর্বে LHR এর বৈশিষ্ট্যগুলির সাথে মিশ্রিত ছিল।
  • report ফর্ম্যাট করা রিপোর্ট HTML/JSON/CSV একটি স্ট্রিং হিসাবে।

ফলাফল বস্তুর পরিবর্তন

JSON আউটপুটে নতুন, শীর্ষ-স্তরের বিন্যাসে উল্লিখিত হিসাবে, অডিটের ফলাফল এখন lhr সম্পত্তির মাধ্যমে উপলব্ধ। v2-এ, এই বস্তুর বিষয়বস্তু ছিল মূলত শীর্ষ-স্তরের JSON আউটপুট। যাইহোক, এই বস্তুর আকৃতি নিজেই v3 এ পরিবর্তিত হয়েছে। নীচের টেবিলে সমস্ত পরিবর্তনের তালিকা রয়েছে।

  • যদি একটি সারির মান v2 এবং v3 উভয় কলামেই থাকে, তাহলে এর অর্থ হল আপনার কোডে থাকা v2 প্রপার্টির যেকোনো রেফারেন্স v3-সমতুল্য দিয়ে প্রতিস্থাপন করা উচিত।
  • যখন v3 কলামে একটি সারির মান থাকে না, তখন নোট কলাম আপনার বিকল্পগুলি বর্ণনা করে।
  • মনে রাখবেন ID মতো আইটেমগুলি স্থানধারক পাঠ্যকে উপস্থাপন করে।
v2 সম্পত্তি v3-সমতুল্য নোট
initialUrl requestedUrl
url finalUrl
generatedTime fetchedTime
reportCategories categories অ্যারে থেকে একটি কীড অবজেক্টে পরিবর্তন করা হয়েছে।
reportGroups categoryGroups
audits. ID .name audits. ID .id
audits. ID .description audits. ID .title
audits. ID .helpText audits. ID .description
audits. ID .scoringMode audits. ID .scoreDisplayMode সম্ভাব্য মানগুলিকে numeric|binary|manual|informative|not-applicable|error
audits. ID .score audits. ID .score স্কোর সবসময় 0 এবং 1 এর মধ্যে একটি সংখ্যা (0-100 নয়) যখন scoreDisplayMode সংখ্যাসূচক বা বাইনারি হয়। অন্যান্য ডিসপ্লে মোডের জন্য স্কোর সবসময় null থাকে কারণ পাস/ফেল করার কোনো ধারণা নেই।
audits. ID .displayValue audits. ID .displayValue এখন স্ট্রিং ইন্টারপোলেশনের জন্য printf-স্টাইল আর্গুমেন্টের একটি অ্যারে হতে পারে।
audits. ID .debugString audits. ID .explanation audits. ID .errorMessage audits. ID .warnings debugString মানগুলি তাদের অভিপ্রায়ের উপর নির্ভর করে উপরের তিনটি বৈশিষ্ট্যের একটিতে রূপান্তরিত হয়েছে।
audits. ID .details audits. ID .details বিশদ কাঠামো আরও ভোগ্য হতে স্থানান্তরিত হয়েছে. .items এ প্রতিটি এন্ট্রি হল একটি বস্তু যার পরিবর্তে নির্ভরযোগ্য কী any[]
audits. ID .error audits. ID .scoreDisplayMode === 'error'
audits. ID .notApplicable audits. ID .scoreDisplayMode === 'not-applicable'
audits. ID .informative audits. ID .scoreDisplayMode === 'informative'
audits. ID .manual audits. ID .scoreDisplayMode === 'manual'
audits. ID .extendedInfo সরানো হয়েছে। পরিবর্তে details ব্যবহার করুন.