সংগ্রহ

বিদ্যমান এবং নতুন সংগ্রহের স্মৃতির প্রভাব কমিয়ে দিন যা ছোট।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ প্রার্থী মুক্তি বিটা রিলিজ আলফা রিলিজ
13 নভেম্বর, 2024 1.4.5 - - 1.5.0-আলফা06

নির্ভরতা ঘোষণা করা

সংগ্রহের উপর নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।

আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:

গ্রোভি

dependencies {
    def collection_version = "1.4.5"
    implementation "androidx.collection:collection:$collection_version"
}

কোটলিন

dependencies {
    val collection_version = "1.4.5"
    implementation("androidx.collection:collection:$collection_version")
}

নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যুক্ত করুন দেখুন।

প্রতিক্রিয়া

আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।

একটি নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

সংস্করণ 1.5

সংস্করণ 1.5.0-alpha06

13 নভেম্বর, 2024

androidx.collection:collection-*:1.5.0-alpha06 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha06-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • বারবার কী সংঘর্ষের ফলে অসংখ্য আইটেম যোগ করার সময় SieveCache এবং OrderedScatterSet এ ঘটতে পারে এমন একটি ক্র্যাশ সংশোধন করা হয়েছে। ( IAaf3d , b/375607736 )
  • সংগ্রহ লাইব্রেরিতে wasm লক্ষ্য যোগ করুন। ( I66fe3 , b/352722444 )

সংস্করণ 1.5.0-alpha05

30 অক্টোবর, 2024

androidx.collection:collection-*:1.5.0-alpha05 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha05-এ এই কমিট রয়েছে।

সংস্করণ 1.5.0-alpha04

অক্টোবর 16, 2024

androidx.collection:collection-*:1.5.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha04 এই কমিট ধারণ করে।

সংস্করণ 1.5.0-alpha03

2 অক্টোবর, 2024

androidx.collection:collection-*:1.5.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha03-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • কোটলিন সংস্করণ আপডেট 1.9 ( I1a14c )

বাহ্যিক অবদান

  • ফরোয়ার্ড-এ containsKeycontains । ধন্যবাদ Jake Wharton! ( I9362b )
  • স্কেলার-বিশেষ সংগ্রহের জন্য কন্টেইনার নির্মাতা যোগ করুন। ধন্যবাদ Jake Wharton! ( I13179 )

সংস্করণ 1.5.0-alpha02

সেপ্টেম্বর 18, 2024

androidx.collection:collection-*:1.5.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha02-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • watchosDeviceArm64 প্ল্যাটফর্ম লক্ষ্যের জন্য সমর্থন যোগ করে। ( I1cc04 , b/364652024 )

সংস্করণ 1.5.0-alpha01

4 সেপ্টেম্বর, 2024

androidx.collection:collection-*:1.5.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.5.0-alpha01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • OrderedScatterSet হল একটি নতুন অর্ডার করা, বরাদ্দ-মুক্ত সংগ্রহ ( Ic4178 )
  • SieveCache হল LruCache এর জন্য একটি নতুন বরাদ্দ-মুক্ত প্রতিস্থাপন যা আরও ভাল হিট অনুপাতের বৈশিষ্ট্যগুলি অফার করে৷ ( I50a17 )
  • IntIntPair এবং FloatFloatPair জন্য packedValue অভ্যন্তরীণ উপস্থাপনা উন্মুক্ত করা হয়েছে। ( Ifeb75 , b/331853566 )
  • তালিকা সংগ্রহে বিষয়বস্তু অ্যারেতে অ্যাক্সেস যোগ করা হচ্ছে। ( I899d5 , b/333903173 )
  • DoubleList যোগ করুন, দ্বৈত মানের জন্য অপ্টিমাইজ করা একটি তালিকার মতো ডেটা স্ট্রাকচার। ( IA10d1 , b/315127635 )

বাগ ফিক্স

  • সংগ্রহের লাইব্রেরি কোটলিন 1.9 ( I0782f ) টার্গেট করতে চলেছে
  • আরো দক্ষ হতে অনেক সংগ্রহ অপ্টিমাইজ করুন। ( IC0566 )

সংস্করণ 1.4

সংস্করণ 1.4.5

30 অক্টোবর, 2024

androidx.collection:collection-*:1.4.5 প্রকাশিত হয়েছে। সংস্করণ 1.4.5-এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.4.4

সেপ্টেম্বর 18, 2024

androidx.collection:collection-*:1.4.4 প্রকাশিত হয়েছে। সংস্করণ 1.4.4-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • একটি খালি সংগ্রহ বাছাই করার সময় ওয়ার্কআউন্ড ArrayIndexOutOfBounds । ( I65245 )

সংস্করণ 1.4.3

7 আগস্ট, 2024

androidx.collection:collection-*:1.4.3 প্রকাশিত হয়েছে। সংস্করণ 1.4.3-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • ScatterMap , ScatterSet , এবং তাদের আদিম রূপগুলিতে ঘটতে পারে এমন একটি দুর্নীতির সমাধান করা হয়েছে৷ ( I38a4a , b/352560465 )
  • কর্মক্ষমতা অপ্টিমাইজেশান. বিশেষ করে:
    • check() এবং required() করার জন্য কলগুলিকে পরিবর্তন করুন যা ইনলাইন ব্যতিক্রম থ্রো করে না। এটি চূড়ান্ত বাইনারি আকার হ্রাস করে এবং আরও গুরুত্বপূর্ণভাবে আই-ক্যাশের চাপকে কিছুটা উপশম করে।
    • সংগ্রহের "স্ক্যাটার" পরিবারে উন্নত removeDeletedMarkers() । নতুন সংস্করণটি মুছে ফেলা মার্কারগুলিকে একবারে 8 মার্কারগুলিকে সাফ করে এবং প্রক্রিয়াটিতে আরও ব্যয়বহুল লেখাগুলি এড়িয়ে যায়৷ ( IC0566 )

সংস্করণ 1.4.2

জুলাই 24, 2024

androidx.collection:collection-*:1.4.2 প্রকাশিত হয়েছে। সংস্করণ 1.4.2-এ এই কমিটগুলি রয়েছে।

নতুন বৈশিষ্ট্য

  • অতিরিক্ত Kotlin মাল্টিপ্ল্যাটফর্ম লক্ষ্যগুলি অন্তর্ভুক্ত করে: watchos , tvos , linuxArm64 । ( b/352543988 )

সংস্করণ 1.4.1

10 জুলাই, 2024

androidx.collection:collection-*:1.4.1 প্রকাশিত হয়েছে। সংস্করণ 1.4.1-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • আকার পরিবর্তন করার সময় মানচিত্র/সেট থেকে মুছে ফেলা সমাধির পাথর সরান। ( 7a996c5 , b/345960092 )

সংস্করণ 1.4.0

24 জানুয়ারী, 2024

androidx.collection:collection-*:1.4.0 প্রকাশিত হয়েছে। সংস্করণ 1.4.0 এই কমিট ধারণ করে.

1.3.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

বক্সিং ছাড়া আদিম সংরক্ষণের জন্য নতুন উচ্চ-দক্ষ সংগ্রহ যোগ করা হয়েছে:

  • MutableScatterMap এবং ScatterMap - MutableMap এবং Map-like API সহ ক্লাস
  • MutableScatterSet & ScatterSet - MutableSet এবং Set-like API সহ ক্লাস
  • MutableObjectList & ObjectList - MutableList এবং List-like API সহ ক্লাস

উদাহরণস্বরূপ, একটি পূর্ণসংখ্যা কী এবং একটি রেফারেন্স টাইপ মান সহ একটি মানচিত্র হল একটি IntObjectMap<T> । একটি দীর্ঘ কী এবং একটি ফ্লোট মান সহ একটি মানচিত্র হল একটি LongFloatMapObjectObjectMap নামের কোনো সংস্করণ নেই কারণ এটি ScatterMap/MutableScatterMap দ্বারা আচ্ছাদিত।

সংস্করণ 1.4.0-rc01

জানুয়ারী 10, 2024

androidx.collection:collection-*:1.4.0-rc01 কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.4.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.4.0-beta02

নভেম্বর 29, 2023

androidx.collection:collection-*:1.4.0-beta02 প্রকাশিত হয়েছে। 1.4.0-beta02 সংস্করণে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • FloatFloatPair এর উন্নত কর্মক্ষমতা। ( if5537 )

বাগ ফিক্স

  • ScatterMap.asMap() পুনরাবৃত্তিকারী এখন নতুন উদাহরণ প্রদান করে ( I28932 , b/310365754 )

সংস্করণ 1.4.0-beta01

15 নভেম্বর, 2023

androidx.collection:collection-*:1.4.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-beta01-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • IndexOutOfBoundsException এর কারণে একটি ক্র্যাশ হতে পারে এমন ObjectList ListIterator জন্য ভুলভাবে মান নির্ধারণ করুন। ( I3bd8a , b/307049391 )

সংস্করণ 1.4.0-alpha02

18 অক্টোবর, 2023

androidx.collection:collection-*:1.4.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.4.0-alpha02 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • put জন্য ওভারলোড যোগ করা হয়েছে যা পূর্ববর্তী মান প্রদান করে যখন এটি সমস্ত আদিম সংগ্রহে প্রতিস্থাপিত হয়, যেমন FloatFloatMap
  • removeIf আদিম সংগ্রহের পদ্ধতিতে রূপান্তর করুন, যেমন MutableFloatFloatMap ইনলাইনে। এটি নিশ্চিত করে যে removeIf জন্য ল্যাম্বডা বরাদ্দ করা হয় না।

সংস্করণ 1.4.0-alpha01

4 অক্টোবর, 2023

androidx.collection:collection-*:1.4.0-alpha01 প্রকাশিত হয়েছে। 1.4.0-alpha01 সংস্করণে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

নতুন উচ্চ-দক্ষতা সংগ্রহ যোগ করা হয়েছে যার কম বরাদ্দ ওভারহেড এবং উচ্চ কার্যকারিতা রয়েছে:

  • MutableScatterMap এবং ScatterMap - MutableMap এবং Map-like API সহ ক্লাস
  • MutableScatterSet & ScatterSet - MutableSet এবং Set-like API সহ ক্লাস
  • MutableObjectList & ObjectList - MutableList এবং List-like API সহ ক্লাস

বক্সিং ছাড়া আদিম সংরক্ষণের জন্য নতুন উচ্চ-দক্ষ সংগ্রহ যোগ করা হয়েছে:

  • Mutable[Int|Float|Long]List - MutableList<Int|Float|Long> -এর মত API সহ ক্লাস। শুধুমাত্র পঠনযোগ্য [Int|Float|Long]List বিদ্যমান। উদাহরণস্বরূপ, পূর্ণসংখ্যাগুলি একটি IntList এ রাখা যেতে পারে।
  • Mutable[Int|Float|Long]Set - MutableSet<Int|Float|Long> -এর মত API সহ ক্লাস। শুধুমাত্র পঠনযোগ্য [Int|Float|Long]Set বিদ্যমান। উদাহরণস্বরূপ, পূর্ণসংখ্যাগুলি একটি IntSet-এ রাখা যেতে পারে।
  • Mutable<Int|Float|Long,T, Int|Float|Long|T> Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map শুধুমাত্র পঠনযোগ্য [Int|Float|Long|Object][Int|Float|Long|Object]Map বিদ্যমান। উদাহরণস্বরূপ, একটি পূর্ণসংখ্যা কী এবং একটি রেফারেন্স টাইপ মান সহ একটি মানচিত্র হল একটি IntObjectMap<T> । একটি দীর্ঘ কী এবং একটি ফ্লোট মান সহ একটি মানচিত্র হল একটি LongFloatMapObjectObjectMap নামের কোনো সংস্করণ নেই কারণ এটি ScatterMap/MutableScatterMap দ্বারা আচ্ছাদিত।

সংস্করণ 1.3.0

সংস্করণ 1.3.0

4 অক্টোবর, 2023

androidx.collection:collection-*:1.3.0 প্রকাশিত হয়েছে। সংস্করণ 1.3.0 এই কমিট ধারণ করে.

1.2.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • আপনি এখন কোটলিন মাল্টিপ্ল্যাটফর্ম প্রকল্পগুলিতে সংগ্রহগুলি ব্যবহার করতে পারেন৷ মনে রাখবেন যে সংগ্রহগুলির নন-অ্যান্ড্রয়েড লক্ষ্যগুলি এখনও পরীক্ষামূলক, তবে আমরা বিকাশকারীদের জন্য সেগুলি ব্যবহার করা সহজ করার জন্য সংস্করণগুলিকে মার্জ করার সিদ্ধান্ত নিয়েছি৷
  • সমস্ত উৎস কোটলিনে স্থানান্তরিত হয়েছে। এই পরিবর্তনের অংশ হিসেবে, অনেক API এখন সঠিকভাবে টাইপ করা হয়েছে শূন্যতার জন্য এবং কিছু প্যাকেজ প্রাইভেট সদস্য internal হয়ে গেছে। নীচের 1.3.x-এর জন্য ছোটো রিলিজ নোটগুলিতে সঠিক পরিবর্তনগুলির একটি তালিকা পাওয়া যায়।
  • কোটলিন মাইগ্রেশনের সাথে, collection-ktx মূল সংগ্রহের আর্টিফ্যাক্টের সাথে একীভূত হয়েছে। আপনি collection:collection-ktx এর পক্ষে যেকোন নির্ভরতাকে নিরাপদে বাদ দিতে পারেন: collection-ktx হিসাবে collection:collection এখন খালি।

সংস্করণ 1.3.0-rc01

6 সেপ্টেম্বর, 2023

androidx.collection:collection-*:1.3.0-rc01 কোনো পরিবর্তন ছাড়াই প্রকাশ করা হয়েছে। সংস্করণ 1.3.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.3.0-beta01

9 আগস্ট, 2023

androidx.collection:collection-*:1.3.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-beta01-এ এই কমিট রয়েছে।

সংস্করণ 1.3.0-alpha04

24 মার্চ, 2023

androidx.collection:collection-*:1.3.0-alpha04 প্রকাশিত হয়েছে।

বাগ ফিক্স

  • কোটলিন নেটিভ টার্গেটস ( b/274786186 , KT-57531 ) এ বিল্ড সমস্যা সমাধানের জন্য মাভেন আর্টিফ্যাক্টস থেকে নির্ভরতার সীমাবদ্ধতা দূর করা হয়েছে।

সংস্করণ 1.3.0-alpha03

22 মার্চ, 2023

androidx.collection:collection-*:1.3.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha03 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • আপনি এখন KMM প্রকল্পগুলিতে সংগ্রহগুলি ব্যবহার করতে পারেন৷ নোট করুন যে সংগ্রহগুলির নন-অ্যান্ড্রয়েড লক্ষ্যগুলি এখনও পরীক্ষামূলক তবে আমরা বিকাশকারীদের পক্ষে সেগুলি ব্যবহার করা সহজ করার জন্য সংস্করণগুলিকে মার্জ করার সিদ্ধান্ত নিয়েছি৷

এপিআই পরিবর্তন

  • ArraySet এখন toArray ( I1ac32 ) এর আরও মেমরি দক্ষ বাস্তবায়নের জন্য AbstractMutableCollection এর পরিবর্তে MutableCollections প্রয়োগ করে

বাগ ফিক্স

  • ArraySet.toArray এখন শুধুমাত্র JVM-এ উপলব্ধ কারণ এটি সবসময় শুধুমাত্র জাভার সাথে সামঞ্জস্যের জন্য অন্তর্ভুক্ত ছিল। Kotlin ব্যবহারকারীদের সাধারণত stdlib এর .toTypedArray সাহায্যকারী ব্যবহার করা উচিত, যা অতিরিক্ত ধরনের নিরাপত্তার সাথে একই কার্যকারিতা প্রদান করে। ( I2c59b )

সংস্করণ 1.3.0-alpha02

জুলাই 27, 2022

androidx.collection:collection:1.3.0-alpha02 এবং androidx.collection:collection-ktx:1.3.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha02 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • SparseArrayCompat এখন সাধারণ আর্টিফ্যাক্ট ( Ic9bd0 , b/219589118 , b/228347315 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ
  • CircularIntArray এখন সাধারণ আর্টিফ্যাক্ট ( I3d8ef , b/228344943 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ
  • LongSparseArray এখন সাধারণ আর্টিফ্যাক্ট ( I73149 , b/228347315 ) থেকে নন-jvm প্ল্যাটফর্মগুলিতে উপলব্ধ

সংস্করণ 1.3.0-alpha01

জুন 29, 2022

androidx.collection:collection:1.3.0-alpha01 এবং androidx.collection:collection-ktx:1.3.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.3.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • collection-ktx এক্সটেনশনগুলিকে মূল সংগ্রহ আর্টিফ্যাক্ট, androidx.collection:collection এ স্থানান্তরিত করা হয়েছে। এই পরিবর্তনটি প্রাক-বিদ্যমান -ktx এক্সটেনশানগুলিকে Kotlin ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য করে তোলে -ktx নির্ভরতা প্রয়োজন ছাড়াই, এখনও বিদ্যমান ব্যবহারকারীদের জন্য সামঞ্জস্য বজায় রাখে। এই এক্সটেনশনগুলিকে আলাদা -ktx আর্টিফ্যাক্টে রক্ষণাবেক্ষণ করা আর উপকারী নয় যেহেতু মূল আর্টিফ্যাক্টটি কোটলিনে চলে গেছে। ( I6eef2 )

এপিআই পরিবর্তন

  • ArraySet এখন AbstractMutableCollection প্রসারিত করে এবং আর সরাসরি সংগ্রহ ইন্টারফেস প্রয়োগ করে না। ( if6da0 , b/230860589 )
  • কোটলিনে ArraySet রূপান্তরিত। কঠোর টাইপিংয়ের কারণে, কিছু Kotlin কল আর কম্পাইল নাও হতে পারে। ( Id68c1 , b/230860589 )
    • নিচের কলগুলোর আর্গুমেন্ট টাইপ T , T? :
      • ArraySet<T>.contains(null)
      • ArraySet<T>.add(null)
      • ArraySet<T>.remove(null)
    • নিম্নোক্ত কলের রিটার্ন টাইপ T? , T! :
      • ArraySet<T?>.valueAt(n)
      • ArraySet<T?>.removeAt(n)
      • ArraySet<T?>().iterator().next()
    • কোটলিন থেকে নিম্নলিখিত কলগুলি আর সম্ভব নয়:
      • set.toArray() - set.toTypedArray() ব্যবহার করুন
      • set.toArray(array) - set.forEachIndexed(array::set) ব্যবহার করুন
  • Kotlin ব্যবহারকারীদের জন্য একটি ঐচ্ছিক যুক্তি হিসাবে SparseArrayCompat জন্য ওভারলোডেড কনস্ট্রাক্টরকে একত্রিত করুন। ( if8407 , b/227474719 )
  • SparseArrayCompat.get(key, defaultValue). মনে রাখবেন এটি এখনও .get(key) এর জন্য অপারেটর সিনট্যাক্সের অনুমতি দেয়, তবে SparseArrayCompat এর API পৃষ্ঠকে এই লাইব্রেরির অন্যান্য ক্লাসের সাথে আরও ভালভাবে সারিবদ্ধ করে। ( I9a38d )
  • LongSparseArray এক্সটেনশনগুলিকে প্রধান আর্টিফ্যাক্ট, androidx.collection:collection-এ স্থানান্তর করুন। এই পরিবর্তনটি প্রাক-বিদ্যমান -ktx এক্সটেনশানগুলিকে Kotlin ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য করে তোলে -ktx নির্ভরতা প্রয়োজন ছাড়াই, এখনও বিদ্যমান ব্যবহারকারীদের জন্য সামঞ্জস্য বজায় রাখে। এই এক্সটেনশনগুলিকে আলাদা -ktx আর্টিফ্যাক্টে রক্ষণাবেক্ষণ করা আর উপকারী নয় যেহেতু মূল আর্টিফ্যাক্টটি কোটলিনে চলে গেছে। ( I8659a )
  • LongSparseArray Kotlin এ রূপান্তর করুন। এই পরিবর্তনটি এর প্রকারগুলিতে সুস্পষ্ট শূন্যতা যোগ করে, যা একটি বাইনারি সামঞ্জস্যপূর্ণ পরিবর্তন, কিন্তু উত্স অসঙ্গতি সৃষ্টি করতে পারে। বিশেষ করে: * .isEmpty আর একটি সম্পত্তি হিসাবে অ্যাক্সেসযোগ্য নয়, এটি অবশ্যই Kotlin - .isEmpty() ( Idfd0f ) এ একটি ফাংশন কল হিসাবে অ্যাক্সেস করতে হবে
  • SimpleArrayMap Kotlin এ রূপান্তর করুন। জাভা-কোটলিন ইন্টারপ এবং উৎসে প্রকারের শূন্যতা সঠিকভাবে সংজ্ঞায়িত করার ক্ষমতার ফলে এই পরিবর্তনটি কয়েকটি বেমানান পরিবর্তন প্রবর্তন করে।
    • প্যাকেজ প্রাইভেট API, .mSize , .mArray , .mHashes , .indexOf() , .indexOfNull() , এবং .indexOfValue() , ব্যক্তিগত করা হয়েছিল - এটি প্রযুক্তিগতভাবে একটি বাইনারি বেমানান পরিবর্তন, কিন্তু এই ক্ষেত্রের উদ্দেশ্যমূলক দৃশ্যমানতাকে প্রতিফলিত করে এবং এটি কোটলিনে আমরা অর্জন করতে পারি সবচেয়ে কাছের কারণ এতে প্যাকেজ-ব্যক্তিগত দৃশ্যমানতা নির্দিষ্ট করার উপায় অন্তর্ভুক্ত নেই।
    • কিছু ধরণের শূন্যতা এখন সঠিকভাবে সংজ্ঞায়িত করা হয়েছে, প্রভাবিত পদ্ধতিগুলি হল: .getOrDefault , .keyAt , .valueAt , .setValueAt , .put , .putIfAbsent , .removeAt , .replace
    • Kotlin ব্যবহারকারীদের জন্য, .isEmpty() এখন সম্পত্তি অ্যাক্সেসের পরিবর্তে শুধুমাত্র একটি ফাংশন হিসাবে উপলব্ধ। ( I271b7 , b/182813986 )
  • CircularArray Kotlin এ রূপান্তর করুন। উল্লেখযোগ্য পরিবর্তন:

    • এর জেনেরিকের শূন্যতাকে নন-নাল হওয়ার জন্য সংশোধন করে, যা পূর্বে ঘোষণা করা অসম্ভব ছিল, কিন্তু তার সমস্ত পাবলিক API-এ প্রয়োগ করা হয়েছিল।
    • কোটলিনের জাভা ইন্টারপের কারণে, পূর্বে বৈশিষ্ট্য বা ফাংশন উভয় হিসাবে নির্দিষ্ট পদ্ধতিতে অ্যাক্সেস করা সম্ভব ছিল। যাইহোক, বাইনারি সামঞ্জস্য বজায় রাখার সময় ডুপ্লিকেশন কমাতে, এইগুলি অপসারণ করা প্রয়োজন ছিল, যা একটি উৎস-বেমানান পরিবর্তন। প্রভাবিত কলগুলি হল: .isEmpty , .getLast() এবং .getFirst() । ( ইফফাক )
  • CircularIntArray Kotlin এ রূপান্তর করুন। কোটলিনের জাভা ইন্টারপের কারণে, পূর্বে বৈশিষ্ট্য বা ফাংশন উভয় হিসাবে নির্দিষ্ট পদ্ধতিতে অ্যাক্সেস করা সম্ভব ছিল। যাইহোক, বাইনারি সামঞ্জস্য বজায় রাখার সময় ডুপ্লিকেশন কমাতে, এইগুলি অপসারণ করা প্রয়োজন ছিল, যা একটি উৎস-বেমানান পরিবর্তন। প্রভাবিত কলগুলি হল: .isEmpty , .getLast() এবং .getFirst() । ( IE36ce )

  • LruCache কে Kotlin ( Ia2f19 ) এ রূপান্তর করুন

  • SparseArrayCompat Kotlin এ রূপান্তর করুন। ( if6fe8 )

    SparseArrayCompat.valueAt() তে একটি ছোট আচরণের পরিবর্তন যোগ করা হয়েছে, যা size() সীমার বাইরে অন-প্রাথমিক কলের জন্য আর ভুলভাবে null ফেরত দেয় না কিন্তু প্রদত্ত প্রাথমিক ক্ষমতার মধ্যে।

    এই পরিবর্তনটি পূর্বে অনুপস্থিত কিছু ধরণের জন্য সঠিক শূন্যতাও প্রবর্তন করে।

    • .get(): E? -> .get(): E
    • .replace(Int, Int?): Int? -> .replace(Int, Int): Int?
    • .replace(Int, Int?, Int?): Boolean -> .replace(Int, Int, Int): Boolean
    • .put(Int, Int?) -> .put(Int, Int)
    • .putIfAbsent(Int, Int?): Int? -> .putIfAbsent(Int, Int): Int?
    • .setValueAt(index: Int, value: Int?) -> .setValueAt(index: Int, value: Int)
    • .indexOfValue(value: Int?): Int -> .indexOfValue(value: Int): Int
    • .containsValue(value: Int?): Boolean -> .containsValue(value: Int): Boolean
    • .append(key: Int, value: Int?) -> .append(key: Int, value: Int)

সংস্করণ 1.2.0

সংস্করণ 1.2.0

ডিসেম্বর 1, 2021

androidx.collection:collection:1.2.0 এবং androidx.collection:collection-ktx:1.2.0 প্রকাশিত হয়েছে। সংস্করণ 1.2.0 এই কমিট ধারণ করে.

1.1.0 থেকে গুরুত্বপূর্ণ পরিবর্তন

  • ArraySet এ একটি অ্যারে কনস্ট্রাক্টর যোগ করুন। ( Id7f19 )
  • entrySet().toArray() , remove() , removeAll() , এবং retainAll() , এবং entrySet().addAll() ( I5d505 ) এর বাস্তবায়ন অপসারণ করে entrySet() API- অনুগত করুন

সংস্করণ 1.2.0-rc01

17 নভেম্বর, 2021

androidx.collection:collection:1.2.0-rc01 এবং androidx.collection:collection-ktx:1.2.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-rc01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • পূর্ববর্তী বিটা থেকে কোন পরিবর্তন নেই।

সংস্করণ 1.2.0-beta01

13 অক্টোবর, 2021

androidx.collection:collection:1.2.0-beta01 এবং androidx.collection:collection-ktx:1.2.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-beta01-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • entrySet().toArray() , remove() , removeAll() , এবং retainAll() , এবং entrySet().addAll() ( I5d505 ) এর বাস্তবায়ন অপসারণ করে entrySet() API- অনুগত করুন

সংস্করণ 1.2.0-alpha01

16 ডিসেম্বর, 2020

androidx.collection:collection:1.2.0-alpha01 এবং androidx.collection:collection-ktx:1.2.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.2.0-alpha01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • ArraySet এ একটি অ্যারে কনস্ট্রাক্টর যোগ করুন। ( Id7f19 )

সংস্করণ 1.1.0

সংস্করণ 1.1.0

জুন 5, 2019

androidx.collection:collection:1.1.0 এবং androidx.collection:collection-ktx:1.1.0 প্রকাশিত হয়েছে। অন্তর্ভুক্ত কমিট 1.1.0 এখানে পাওয়া যাবে.

নীচে 1.0.0 থেকে 1.1.0 পর্যন্ত পরিবর্তনগুলির একটি সারসংক্ষেপ রয়েছে:

নতুন বৈশিষ্ট্য

  • 'collection-ktx' artifact-এ contains এবং isNotEmpty ফাংশনের জন্য আরও দক্ষ বাস্তবায়ন ব্যবহার করুন। ( aosp/866529 )

এপিআই পরিবর্তন

  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772608 ) এ putIfAbsent যোগ করুন
  • SimpleArrayMapgetOrDefault যোগ করুন ( aosp/772607 )
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat এ টু-আর্গুমেন্ট remove যোগ করুন। এই কার্যকারিতার জন্য সংশ্লিষ্ট KTX এক্সটেনশনগুলিকে অবমূল্যায়ন করুন। ( aosp/772482 )
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772483 ) এ দুই-আর্গুমেন্ট replace যোগ করুন
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772484 ) এ তিন-আর্গুমেন্ট replace যোগ করুন
  • অপ্রয়োজনীয় delete পদ্ধতি বাতিল করুন। remove পদ্ধতি একই API এবং কার্যকারিতা অফার করে এবং নন-স্পেশালাইজড ম্যাপ দ্বারা ব্যবহৃত API-এর সাথে মেলে। ( aosp/866053 )

বাগ ফিক্স

  • ArrayMap.class এর পরিবর্তে SimpleArrayMap.class এ অ্যারের অভ্যন্তরীণ গ্লোবাল ক্যাশে সিঙ্ক্রোনাইজ করতে SimpleArrayMap পরিবর্তন করুন। এটি নিশ্চিত করে যে আপনি যদি শুধুমাত্র SimpleArrayMap ব্যবহার করেন তবে ArrayMap কোড সঙ্কুচিত করার সরঞ্জাম দ্বারা সরানো যেতে পারে। ( aosp/934557 )

সংস্করণ 1.1.0-rc01

7 মে, 2019

androidx.collection:collection:1.1.0-rc01 এবং androidx.collection:collection-ktx:1.1.0-rc01 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।

নতুন বৈশিষ্ট্য

  • 'collection-ktx' artifact-এ contains এবং isNotEmpty ফাংশনের জন্য আরও দক্ষ বাস্তবায়ন ব্যবহার করুন। ( aosp/866529 )

সংস্করণ 1.1.0-beta01

3 এপ্রিল, 2019

androidx.collection:collection:1.1.0-beta01 এবং androidx.collection:collection-ktx:1.1.0-beta01 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত কমিটগুলি এখানে পাওয়া যাবে।

এপিআই পরিবর্তন

  • alpha03 রিলিজ নোটে উল্লিখিত পদ্ধতিটির @RestrictTo মান পরিবর্তন করা হয়েছে। এটি কোনো AndroidX লাইব্রেরি দ্বারা অব্যবহৃত ছিল (এখন বা ঐতিহাসিকভাবে) এবং এটি এমন কোনো কার্যকারিতা অফার করেনি যা পাবলিক API থেকে অনুপস্থিত ছিল।

বাগ ফিক্স

  • ArrayMap.class এর পরিবর্তে SimpleArrayMap.class এ অ্যারের অভ্যন্তরীণ গ্লোবাল ক্যাশে সিঙ্ক্রোনাইজ করতে SimpleArrayMap পরিবর্তন করুন। এটি নিশ্চিত করে যে আপনি যদি শুধুমাত্র SimpleArrayMap ব্যবহার করেন তবে ArrayMap কোড সঙ্কুচিত করার সরঞ্জাম দ্বারা সরানো যেতে পারে। ( aosp/934557 )

সংস্করণ 1.1.0-alpha03

13 মার্চ, 2019

androidx.collection:collection:1.0.0-alpha03 এবং androidx.collection:collection-ktx:1.0.0-alpha03 প্রকাশিত হয়েছে। এই সংস্করণে অন্তর্ভুক্ত প্রতিশ্রুতির সম্পূর্ণ তালিকা এখানে পাওয়া যাবে।

এপিআই পরিবর্তন

  • ArraySet পূর্বে চিহ্নিত @RestrictTo(LIBRARY_GROUP) এর একটি পদ্ধতি @RestrictTo(LIBRARY_GROUP_PREFIX) এ পরিবর্তিত হয়েছে। এটি অন্যান্য AndroidX লাইব্রেরিগুলির দ্বারা ঐতিহাসিক ব্যবহারকে সমর্থন করার জন্য যা এখন বিভিন্ন Maven গ্রুপ আইডিতে রয়েছে৷ এই পদ্ধতিটি হয় সর্বজনীন করা হবে বা 1.1.0-alpha04-এ সরানো হবে কারণ অন্যান্য AndroidX লাইব্রেরিগুলি বিশেষ API গুলি পাবে না যা অন্যান্য বিকাশকারীরা পায় না৷

সংস্করণ 1.1.0-alpha02

30 জানুয়ারী, 2019

androidx.collection:collection 1.1.0-alpha02 এবং androidx.collection:collection-ktx 1.1.0-alpha02 প্রকাশিত হয়েছে।

এপিআই পরিবর্তন

  • অপ্রয়োজনীয় delete পদ্ধতি বাতিল করুন। remove পদ্ধতি একই API এবং কার্যকারিতা প্রদান করে এবং অ-বিশেষায়িত মানচিত্র দ্বারা ব্যবহৃত API-এর সাথে মেলে। ( aosp/866053 )

সংস্করণ 1.1.0-alpha01

ডিসেম্বর 3, 2018

এপিআই পরিবর্তন

  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772608 ) এ putIfAbsent যোগ করুন
  • SimpleArrayMapgetOrDefault যোগ করুন ( aosp/772607 )
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat এ টু-আর্গুমেন্ট remove যোগ করুন। এই কার্যকারিতার জন্য সংশ্লিষ্ট KTX এক্সটেনশনগুলিকে অবমূল্যায়ন করুন। ( aosp/772482 )
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772483 ) এ দুই-আর্গুমেন্ট replace যোগ করুন
  • LongSparseArray , SimpleArrayMap , এবং SparseArrayCompat ( aosp/772484 ) এ তিন-আর্গুমেন্ট replace যোগ করুন