Time for a new release of MvvmCross. Many thanks to all the contributors for this release.

There are a few breaking changes to this release, hence the bump of version to 4.4.0. There was also a minor issue with some nuspecs, which forced us to release 4.4.1 of a few AndroidSupport packages.

Breaking changes are noted at the end of each change log below.

In general all Windows Phone 8.0 projects have been removed as we do not support Silverlight anymore, in preparation for switching to .NETStandard.

Here is a change log for all the repositories.

MvvmCross (main repo)

266 files changed, 8787 insertions(+), 2963 deletions(-) compare

  • Fixed design time error not being able to get a IoC container #1151 #1438 @Luca7993 @martijn00
  • Fixed #1431 using GetString on low API-levels apps would crash. #1439 @martijn00
  • Added ability to run bindings synchronously instead of async for UITableView #1442 @MarcBruins
  • Promoted experimental ValueCombiners to non-experimental #1449 @kjeremy
  • Added support for view model instantiation using segue on iOS #1404 @chrilith
  • Added cancel method to MvxAsyncCommand #1455 @martijn00
  • Added better support to bind to interfaces #1434 @drungrin
  • Added ListPreference binding on Android @kjeremy
  • Updated .mailmap for better visibility of who made commits @spockfish @cheesebaron
  • Added tvOS support #1448 @martijn00
  • Added MvxObservableCollection #1462 @martijn00
  • Methods in MvxExpandableListAdapter made virtual for easier inheritance #1463 @kjeremy
  • Enabled usage of multiple MvxAttributs for specifying different layouts for different Android specifications [#1469]((https://github.com/MvvmCross/MvvmCross/pull/1469) @martijn00
  • Fixed a lot of issues with Android bindings and Garbage Collection. Switched to using weak subscription instead of hooking up events directly. #1446 @kjeremy
  • Added target binding for Drawable on Android #1470 @kjeremy
  • Simplified nuspec dependencies [#1471]((https://github.com/MvvmCross/MvvmCross/pull/1471) @martijn00
  • Allow fragments with different java names via RegisterAttribute #1473 @kjeremy
  • Fixed missing files for BindingEx after removal of WindowsPhone. Also changes namespaces for BindingEx to .WindowsCommon and .Wpf for those platforms. It was .WindowsPhone for all platforms before. #1476 @cheesebaron
  • Added analyzer for when using *MvxViewModel* and passing no arguments in *ShowViewModel* [#1477](https://github.com/MvvmCross/MvvmCross/pull/1477) [@azchohfi](https://github.com/azchohfi)

Breaking changes: Namespaces in BindingEx have changed. Before they were all MvvmCross.BindingEx.WindowsPhone. This has now changed to MvvmCross.BindingEx.WindowsCommon in Windows Phone 8.1 and Windows 8.1 projects. It has changed to MvvmCross.BindingEx.Wpf in WPF projects. 266 files changed, 8787 insertions(+), 2963 deletions(-) compare

  • Fixed design time error not being able to get a IoC container #1151 #1438 @Luca7993 @martijn00
  • Fixed #1431 using GetString on low API-levels apps would crash. #1439 @martijn00
  • Added ability to run bindings synchronously instead of async for UITableView #1442 @MarcBruins
  • Promoted experimental ValueCombiners to non-experimental #1449 @kjeremy
  • Added support for view model instantiation using segue on iOS #1404 @chrilith
  • Added cancel method to MvxAsyncCommand #1455 @martijn00
  • Added better support to bind to interfaces #1434 @drungrin
  • Added ListPreference binding on Android @kjeremy
  • Updated .mailmap for better visibility of who made commits @spockfish @cheesebaron
  • Added tvOS support #1448 @martijn00
  • Added MvxObservableCollection #1462 @martijn00
  • Methods in MvxExpandableListAdapter made virtual for easier inheritance #1463 @kjeremy
  • Enabled usage of multiple MvxAttributs for specifying different layouts for different Android specifications [#1469]((https://github.com/MvvmCross/MvvmCross/pull/1469) @martijn00
  • Fixed a lot of issues with Android bindings and Garbage Collection. Switched to using weak subscription instead of hooking up events directly. #1446 @kjeremy
  • Added target binding for Drawable on Android #1470 @kjeremy
  • Simplified nuspec dependencies [#1471]((https://github.com/MvvmCross/MvvmCross/pull/1471) @martijn00
  • Allow fragments with different java names via RegisterAttribute #1473 @kjeremy
  • Fixed missing files for BindingEx after removal of WindowsPhone. Also changes namespaces for BindingEx to .WindowsCommon and .Wpf for those platforms. It was .WindowsPhone for all platforms before. #1476 @cheesebaron
  • Added analyzer for when using *MvxViewModel* and passing no arguments in *ShowViewModel* [#1477](https://github.com/MvvmCross/MvvmCross/pull/1477) [@azchohfi](https://github.com/azchohfi)

Breaking changes: Namespaces in BindingEx have changed. Before they were all MvvmCross.BindingEx.WindowsPhone. This has now changed to MvvmCross.BindingEx.WindowsCommon in Windows Phone 8.1 and Windows 8.1 projects. It has changed to MvvmCross.BindingEx.Wpf in WPF projects.

MvvmCross-Plugins

446 files changed, 1280 insertions(+), 2890 deletions(-) compare

  • Added PreserveAttribute on plugins and PluginLoaders #140 @willsb
  • Updated to new Android Support library for DownloadCache #141 @martijn00
  • Simplify nuspec dependencies #142 @martijn00
  • Removed Windows Phone 8.0 projects @cheesebaron
  • Fixed duplicate PreserveAttribute in Json plugin @cheesebaron
  • Removed Bookmarks and SoundEffects plugins as they were only available for Windows Phone 8.0 @cheesebaron 446 files changed, 1280 insertions(+), 2890 deletions(-) compare

  • Added PreserveAttribute on plugins and PluginLoaders #140 @willsb
  • Updated to new Android Support library for DownloadCache #141 @martijn00
  • Simplify nuspec dependencies #142 @martijn00
  • Removed Windows Phone 8.0 projects @cheesebaron
  • Fixed duplicate PreserveAttribute in Json plugin @cheesebaron
  • Removed Bookmarks and SoundEffects plugins as they were only available for Windows Phone 8.0 @cheesebaron

MvvmCross-AndroidSupport

95 files changed, 1573 insertions(+), 759 deletions(-) compare

Possible breaking changes: No namespace changes. However, classes have been moved around to match the structure of the Android Support packages. Three new packages have been added, MvvmCross.Droid.Support.Core.UI, MvvmCross.Droid.Support.Core.Utils and MvvmCross.Droid.Support.Fragment.

Fragment related classes from MvvmCross.Droid.Support.v4, have been moved into MvvmCross.Droid.Support.Fragment.

MvxSwipeToRefreshLayout has been moved from MvvmCross.Droid.Support.v4 to MvvmCross.Droid.Support.Core.UI.

MvxWakefulBroadcastReceiver has been moved from MvvmCross.Droid.Support.v4 to MvvmCross.Droid.Support.Core.Utils. 95 files changed, 1573 insertions(+), 759 deletions(-) compare

Possible breaking changes: No namespace changes. However, classes have been moved around to match the structure of the Android Support packages. Three new packages have been added, MvvmCross.Droid.Support.Core.UI, MvvmCross.Droid.Support.Core.Utils and MvvmCross.Droid.Support.Fragment.

Fragment related classes from MvvmCross.Droid.Support.v4, have been moved into MvvmCross.Droid.Support.Fragment.

MvxSwipeToRefreshLayout has been moved from MvvmCross.Droid.Support.v4 to MvvmCross.Droid.Support.Core.UI.

MvxWakefulBroadcastReceiver has been moved from MvvmCross.Droid.Support.v4 to MvvmCross.Droid.Support.Core.Utils.

MvvmCross-iOSSupport

179 files changed, 4281 insertions(+), 479 deletions(-) compare

MvvmCross-Forms

136 files changed, 49054 insertions(+), 27063 deletions(-) compare