Use a stable sort algorithm for Iterable.sortedBy (#192)
* Use a stable sort algorithm for Iterable.sortedBy
* Increment version number and add changelog entry
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e39b9d2..0e5a4af 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,6 @@
-## 1.15.1-dev
+## 1.16.0
+
+* Use a stable sort algorithm in the `IterableExtension.sortedBy` method.
## 1.15.0
diff --git a/lib/src/iterable_extensions.dart b/lib/src/iterable_extensions.dart
index cddc497..b0bf0ad 100644
--- a/lib/src/iterable_extensions.dart
+++ b/lib/src/iterable_extensions.dart
@@ -64,7 +64,7 @@
/// property [keyOf] of the element.
List<T> sortedBy<K extends Comparable<K>>(K Function(T element) keyOf) {
var elements = [...this];
- quickSortBy<T, K>(elements, keyOf, compareComparable);
+ mergeSortBy<T, K>(elements, keyOf, compareComparable);
return elements;
}
@@ -75,7 +75,7 @@
List<T> sortedByCompare<K>(
K Function(T element) keyOf, Comparator<K> compare) {
var elements = [...this];
- quickSortBy<T, K>(elements, keyOf, compare);
+ mergeSortBy<T, K>(elements, keyOf, compare);
return elements;
}
diff --git a/pubspec.yaml b/pubspec.yaml
index 9ce3549..c8a468e 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
name: collection
-version: 1.15.1-dev
+version: 1.16.0
description: Collections and utilities functions and classes related to collections.
repository: https://github.com/dart-lang/collection