লেগ্যাসি ফাইল

লেগ্যাসি ফাইল সম্পর্কে একটি ব্যানার দেখছেন? যা জানা দরকার তা এখানে।


Note

আপনি যদি v3 ব্যবহার শুরু করার পর Elixir বা Elm-এ এটি দেখতে পান, তার কারণ সম্ভবত এই ট্র্যাকগুলো তাদের ফাইল স্ট্রাকচার বদলে ফেলেছে। এই পরিবর্তন কীভাবে সামলাবেন, তা এই ডকুমেন্টের নিচের অংশগুলোতে দেখুন।

লেগেসি ফাইল কী?

আপনি যদি Exercism-এর অনলাইন এডিটর ব্যবহার করেন, তাহলে মাঝে মাঝে লেগেসি ফাইল নিয়ে একটি সতর্কবার্তা দেখতে পারেন। এটি দেখার দুটি কারণ থাকতে পারে।

CLI-তে ভুলভাবে আপলোড করা ফাইল

আপনি যখন CLI ব্যবহার করেন, তখন আপনার ইচ্ছেমতো যেকোনো ফাইল আপলোড করতে পারেন। তবে অনলাইন এডিটর কেবল সেই ফাইলগুলো সম্পাদনা করতে দেয় যেগুলো সম্পর্কে সে জানে। তাই যদি এমন কোনো ফাইল আপলোড করেন যেটি এডিটর জানে না, তাহলে সে সেটি সম্পাদনা করতে দেবে না, এবং মুছে ফেলতে চাইলে সেজন্য একটি সতর্কবার্তা দেখাবে।

অনুশীলনী পরিবর্তনের কারণে তৈরি হওয়া ফাইল

কখনো কখনো অনুশীলনীর গঠন বদলে যায়। ফাইলের নাম বদলে যেতে পারে, কিংবা গোটা অনুশীলনীর গঠনই বদলে যেতে পারে। আমরা এটি এড়াতে চেষ্টা করি, তবে কখনো কখনো ব্যবহারিক কারণেই এটিই সঠিক সিদ্ধান্ত হয়। উদাহরণস্বরূপ, কোনো ট্র্যাক তার বিল্ড সিস্টেম বদলাতে পারে, যেমনটি Elixir করেছিল exs থেকে ex ফাইলে যাওয়ার সময়। অথবা কোনো ভাষার স্বাভাবিক ডিরেক্টরি গঠন বদলে যেতে পারে, যেমনটি Elm-এ ঘটেছিল যখন তারা সবকিছু সাবডিরেক্টরিতে সরিয়ে নেয়।

এসব ক্ষেত্রে আমরা আপনার হয়ে স্বয়ংক্রিয়ভাবে ফাইলগুলো সরাতে পারি না, তাই কিছু কাজ আপনাকে নিজ হাতে করতে হবে। এডিটরে আপনি পুরনো সমাধান ফাইল (লেগেসি ব্যানার-সহ) এবং নতুন সমাধান ফাইলের স্টাব দেখতে পাবেন। পুরনো ফাইল থেকে নতুন ফাইলে আপনার কাজ কপি করুন, আর যে কোড বদলানো দরকার সেটি ঠিক করে নিন। টেস্ট পাস হয়ে গেলে পুরনো সমাধান ফাইলটি মুছে ফেলতে পারেন, আর এসব কিছু যে কখনো ঘটেছিল তা ভুলে যান 🙂

লেগেসি ফাইল মুছে ফেলা

কোনো লেগেসি ফাইল মুছে ফেললে তা আগের ইটারেশনগুলোকে প্রভাবিত করে না। ফাইলটি ওই ইটারেশনগুলোর মধ্যে থেকেই যায়। কোনো ফাইল মুছে ফেলা কেবল এডিটরের মাধ্যমে আপনি যে পরের ইটারেশন জমা দেবেন, সেখান থেকে সেটি সরিয়ে দেয়।

ট্র্যাকের গঠনে পরিবর্তন

Elixir

২০১৯ সালের জুলাই মাসে Elixir তার অনুশীলনীর গঠন বদলে দেয়: Elixir স্ক্রিপ্ট (*.exs ফাইল) ব্যবহারের বদলে প্রতিটি অনুশীলনীর জন্য একটি সম্পূর্ণ Mix প্রজেক্ট। v3-এর সুবিধাগুলো ব্যবহার করতে, lib/<exercise_stub>.ex পথে থাকা স্টাব ফাইলে আপনার সমাধান কপি করুন। টেস্ট ফাইল সরানোর দরকার নেই, হালনাগাদ সংস্করণটি ইতিমধ্যেই সঠিক জায়গায় থাকবে।

Elm

v3 চালু হওয়ার সময় Elm তার অনুশীলনীগুলো বদলে দেয়।