-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ship ReactiveUI 6.0 #434
Ship ReactiveUI 6.0 #434
Conversation
I have found the non generic versions to be very useful. For example, assume you have a method called GetEvents(some params) and it returns collections of various types based on those params, being able to address that return value as a non-generic collection can be very valuable. |
What would you say is the current status for RxUI 6? I saw that there was the breaking IReactiveCollection interface removal, which is cool, but what generally is planned for it? Any removal of some of the legacy stuff -- having too many different ways of doing the same thing? With the Xamarin hotfix, do you think the rxui6-master branch is "stable/correct" for use or has there been too much untested code put in? Must kill file-linked projects! :) |
@jlaanstra Thanks for the fixups - how did I miss this? Weird. |
👍 |
You should still be able to do this by using ISomeInterface, which is basically the same as a non-generic interface. |
I would say +1 to removing the legacy stuff that currently resides in the Legacy folder, but I leave that decision to @paulcbetts . |
@jlaanstra What is ISomeInterface? The issue is I want IReactiveCollection for sure, not IList or something that doesn't have the same interface guarantees. |
Hey guys, there was a screwed up merge awhile back and I had to rewrite history to fix it - if you pulled sometime this afternoon, you need to do the following to fix it: git fetch
git reset origin/rxui6-master |
I just did that - I also nuked my local rxui6-master branch and re-checked it out from the origin (upstream in my remotes) When I try to push back to my fork I get the following error: error: failed to push some refs to 'https://onovotny@github.com/onovotny/ReactiveUI.git' How do I force the push to my fork? |
@onovotny |
Just noticed that in the interface refactoring/cleanup, SuppressChangeNotifications() is no longer on the base interfaces for IReactiveList. It should go back... |
For a To Do: Need to figure out if Bind(*) can work without the IViewFor constraint. The scenario is Android, in the views for reactive list adapters. If you try to bind to a simple view, like TextView, there's no way to. You need to derive your own to get IViewFor. |
I would like to add this back. Windows 8 still has twice as much market share as Windows 8.1 according to Net Applications (http://thenextweb.com/insider/2014/01/01/windows-8-windows-8-1-pass-10-market-share-windows-7-still-gains-windows-xp-falls-30/#!r1NYr) and since we currently do not use Windows 8.1 specific API's, I do not see a good reason to drop Win8 support in RxUI 6.x. I will submit a PR but would like to hear your opinions first. Note that a library targeting Windows 8 will run just fine on Windows 8.1 |
I can't even create Win8.0 projects in VS2013 anymore, and I'm constantly nagged by VS to upgrade them. I'd rather just capitulate. Hm. However, 50% of WinRT-capable people still on Win8 is a compelling argument. Anyone else have any thoughts? |
VS only prompts you once unless you remove the .suo file. I don't like it too but I just ignore it and while creating the projects seems like a hassle, you can still build and maintain them if you choose to install the VS part during setup. I would love to be able to do Win81 only, but with the current adoption I just still need Win8 support and I guess many others do too. |
I will create a PR with the projects setup correctly. |
Here's a backup copy of what was the Ideas thread before we transitioned into mode: This branch is the Master branch for tracking all of the stuff that will eventually become ReactiveUI 6.0: Cool Ideas
What has Shipped:
Breaking Changes
DO THIS BEFORE SHIPPING
Find And Replace Breaking Changes
|
The changes to RxUI.Cocoa where there were generic NSObjects should be restored. Xamarin.iOS 7.2.1 finally supports generic NSObjects! http://docs.xamarin.com/guides/ios/under_the_hood/api_design/nsobject_generics/ |
Hmm....seems @paulcbetts has already reverted it. 🍻 |
Fix incorrect passing of Lambda expression.
Object.Prop1 changes Object.Prop1 is being listened for changes, and when Prop1 changes, it causes Prop2 to change Object.Prop2 change listener doesn't fire properly (it is caught in the buffer) This is because the way Buffer is implemented internally, it Nexts out the buffer, then re-grabs the Close observable, so any changes created during that window are stuck until the buffer gets closed next time.
Fix nested object change
Proxy BinarySearch methods to inner list
Throttle values until the command can again be executed.
Intellisense docs
ReactiveUI 6.x is now in Ship It Mode, the :squirrel: must be given its Due.
DO THIS BEFORE SHIPPING
What has Shipped:
Breaking Changes
IReactiveCollection
. I believe you can just use the generic variant almost everywhere, since every collection type in ReactiveUI is generic.IReactiveCollection<T>
only loses the typeIReactiveCollection
. All its interfaces are still implemented by the generic variant.IReactiveCollection<T>
interface no longer implementsICollection<T>
. However it does still implementIEnumerable<T>
.IEnableLogger
now needs ausing Splat;
InitializeResolver
=>InitializeSplat
+InitializeReactiveUI
WhenAny
to get to these properties instead of grabbing the backing field.using Splat;
to fix this), and the latter is deprecated. Akavache is a better solution for ObservableAsyncMRUCache.RegisterAsync
. If you were relying on this, you probably need to add someObserveOn(RxApp.MainThreadScheduler)
sFind And Replace Breaking Changes
RxApp.DependencyResolver
=>Locator.Current
RxApp.MutableResolver
=>Locator.CurrentMutable
RxApp.InUnitTestRunner
=>ModeDetector.InUnitTestRunner