Xamarin.Forms Feature Roadmap

DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai
edited October 2 in Xamarin.Forms Releases

This roadmap outlines our anticipated feature releases.

Disclaimer

We cannot predict the future and how everything will shake out. Things will change. Timing may be adjusted due to priority changes, in pursuit of quality standards, or any number of other really good reasons that we will strive to proactively and openly communicate.

The Features Roadmap and Timeline

We expect to deliver several pre-releases and stable releases during each version series.

Version Series Estimated Release
2.4 Stable Q3 2017
vNext-previews Q3 2017
vNext Stable Q4 2017
vNext2-previews Q4 2017
vNext2 Stable Q1 2018

2.4 (est. Q3 2017)


Fast Renderers for Android
Optimize view renderers to streamline view creation and improve performance. Label, Image, and Button controls.

Feature Flags
We are introducing a way to enable/disable features by setting Flags prior to initializing Xamarin.Forms. This enables us to ship features that are of high value, but may introduce significant API changes such as Fast Renderers. PR.

Android Example:

public partial class Activity1 : FormsAppCompatActivity
{
    protected override void OnCreate(Bundle bundle)
    {
                ...
                Forms.SetFlags("FastRenderers_Experimental");
                Forms.Init(this, bundle);
                ...
    }
}

Xamarin.Forms for macOS Preview
Xamarin.Forms is coming to macOS, joining iOS, Android, Windows, and Tizen as target platforms for Xamarin.Forms.

.NET Standard 2.0 Phase 1
Xamarin.Forms nuspec targets 2.0 and may be used in .NET Standard projects.

vNext (est. Q4 2017)


Xamarin.Forms Embedding
Embed Xamarin.Forms into a native Xamarin.iOS, Xamarin.Android, and UWP. Available now in a special preview.

PR

Known issues:

  • DisplayAlert and DisplayActionSheet don't work and should
  • Support needed for android.support.v4.app.Fragment
  • Support needed to specify a FragmentManager
  • UWP namespace cleanup
  • UWP Frame navigation not currently handled
  • iOS namespace cleanup

Fast Renderers for Android
Optimize view renderers to streamline view creation and improve performance. Working on the other UI controls. We will be releasing them as they are complete.

Layout Compression
LayoutCompression allows multiple layers of Xamarin.Forms layouts to be packed into a single native one. PR.

.NET Standard 2.0 Phase 2
Xamarin.Forms built with .NET Standard 2.0. Updating Visual Studio templates to work in .NET Standard projects.

Globalization Support
RTL flow direction for text, layouts, and images. Following the UWP specification. Working Branch

Accessibility Improvements
Add direct support for focus order and tab index.

Xamarin.Forms for GTK# Preview
Xamarin.Forms is coming to Linux. PR.

Deprecation of WP8.0 and 8.1
This will impact startup time in particular. See PR.

vNext2 (est. Q1 2018)


Fast Renderers
Optimize view renderers to streamline view creation and improve performance. Ongoing work on controls. We will be releasing as they are complete.

ListView Improvements
Remove need for a ViewCell and the overhead that creates. Other performance improvements.

Cut down on GPU overdraw for Android
Try to avoid overdraw on Android where possible to improve performance.

Gesture Improvements
Add a Long Press gesture as well as an easy way to add custom gestures without requiring platform code.

FlexLayout
Review the original Evolution Proposal. Working Branch. We will be replacing the current layout system with Flex.

Xamarin.Forms for GTK#
Xamarin.Forms is coming to Linux. Working Repository.

Xamarin.Forms for macOS
Xamarin.Forms is coming to macOS, joining iOS, Android, Windows, and Tizen as target platforms for Xamarin.Forms.

Renderer API Standardization
Make it easier to create custom renderers. Spike PR.

Backlog


Startup Time Improvements
Binding System Updates including OneTime Mode
XAMLC Improvements
CarouselView v1 Stable
Visual State Manager
Popover Control
View Lifecycle Events
Better Desktop Support
CSS-Like Styling
MenuPage
RelativePanel
Xamarin.Forms for WPF
Design Updates for iOS, Android Material, and UWP Fluent

Open Source Contributions

The Xamarin.Forms Evolution forum is the place to start.

[Edited 8/15/2017]

«13456711

Posts

  • DH80DH80 USMember ✭✭
    edited January 4

    @DavidOrtinau yes true very excited about those as well.

  • Looking forward to Xamarin.Forms for macOS....!
    Assuming its native/cocoa (not gtk/x/etc..).

  • MichaelRumplerMichaelRumpler ATMember ✭✭✭✭

    I also look forward to those performance improvements. They sound promising.

    Will there be a 2.3.4? Only yesterday somebody asked again what happened to 2.3.4-pre1. It has been removed right after the release and nothing new within 4 weeks. I saw several bugs which say "fixed in 2.3.4-pre1", but that version is not available.

    If you skip 2.3.4, then when will we see 2.4.0-pre1? If it should be released in February, then a pre version should be imminent now.

  • JKayJKay USMember ✭✭✭

    +1 for CarouselView. Finally someone can take a look at my simple pull requests #9 #10. The project is also far too complicated (the .bat file build proccess?) for a person (like myself) to contribute to easily

  • rogiheerogihee NLMember ✭✭✭

    Thanks a lot for the list, makes sense to me! Very happy to see the performance as top priority!

    Please note there is quite a big backlog of small bugfix PR's done by @AdrianKnight for example. Ideally, I think the number of open PR's should be as low as possible. How does reviewing and validating PR's fit in the Roadmap?

    After review and approval, will the PR get a badge for the intended release when at latest it will be merged? Then there is a deadline per PR and for the submitter it is clear when a merge is expected.

  • BradChase.2654BradChase.2654 USMember ✭✭✭

    @MichaelRumpler You can just go download the code for it https://github.com/xamarin/Xamarin.Forms/releases/tag/beta-2.3.4-pre1. You will notice there were way too many issues with it. I wouldnt be surprised if they just skip the entire release. That said I too +1 on the earlier the better on performance. This is one of the biggest concerns for us besides the Label renderer and the massive performance hit we get from the fact DataTemplates are rendered before ever even being used. https://bugzilla.xamarin.com/show_bug.cgi?id=45179. We use ALOT of templates.

    Good luck X.Forms, I am glad you guys are addressing the issues and the community! This is a big step in getting back on track.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @MichaelRumpler @BradChase.2654 I'm looking into this today. My understanding right now is we have addressed all blockers to pushing 2.3.4 out as a pre and getting everyone banging on it again.

    Keep in mind, this roadmap is specifically feature releases in the broader scope and doesn't encompass every detail of the Forms release world. As I codify other processes and release plans, I'll get those out here in another thread and likely on GitHub so we have visibility and discussion and set clearer expectations.

    Anything else you want clarity and visibility on, let me know. What I'm hearing now is:

    • contribution and PR processes, status
    • minor releases

    Thanks for patience especially initially as I get my bearings. I'll get info out as quickly as I can. I don't want to jump the gun and spill bad info.

  • BradChase.2654BradChase.2654 USMember ✭✭✭
    edited January 4

    @DavidOrtinau My understanding from what we noticed is you still cannot add Event handlers into XAML with the latest version of forms with XAMLC turned on. There were alot of issues with the latest XAML reader...

    EDIT: That reminds me to ask if these changes to the forms team are going to include some sort of an internal testing phase with a team dedicated to testing? Along with that will there be a serious attempt at trying to figure out issues rather than just," I tried it in 5 minutes and could not reproduce, please enter an entire project in bugzilla and we might look at it" answer we typically get? I think that would show that you are dedicated to the community and the Forms project...

  • FredyWengerFredyWenger CHInsider ✭✭✭✭✭

    Nice to see, that Xamarin starts to have a roadmap :smile:
    Please do this also in the future and hold your promise:

    Quality is top of the list. This means stability and performance first and foremost

    Thanks!

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @AndrewMobile thanks! I'm in favor of leveraging GitHub for wiki and roadmap etc.

    In drafting our roadmap, I referenced several others. Anything like that that you think would make the Roadmap more useful, I'll definitely entertain it. It's not a marketing piece, it's to increase visibility with the community about what's being done and planned. Not everything will make sense to include on the feature roadmap, but if it's something we need out there, I'll find the right place for it.

    re: branches - commits and PRs in GitHub is where the most recent stuff lives and we are moving towards that everywhere possible. Which means, there's some stuff that predates or is spiked on the side and not reflected yet in the main repos. I'm getting a grasp on that and I think it's fair to ask "where's the work" and "when can we expect to see progress".

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    Thanks @FredyWenger! As I've mentioned elsewhere to @AdrianKnight, please do keep me accountable. It's not an easy proposition what's being done here, but everyone's heavily invested.

  • bprasadbprasad USMember ✭✭
    Also solve Issue with vs and make xaml previewer more strong ....most problem I face is designing the page...
  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @bprasad said:
    Also solve Issue with vs and make xaml previewer more strong ....most problem I face is designing the page...

    For sure, we can all expect XAML Previewer to only get better as it approaches release. You may already realize this, but although it's in the Stable channel, it is still a Preview release. We should try to get some kind of badge on it to make that clear.

  • JohnHardmanJohnHardman GBUniversity ✭✭✭✭✭

    @DavidOrtinau - This might be a question for the Test Cloud team, but is there any update on when Xamarin.UITest will support all Xamarin.Forms supported platforms? I'm holding off on any further UITest work until I can use one set of tests across Android, iOS and UWP. Obviously, support for WinRT would also be useful too, but UWP is more important for me.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @JohnHardman said:
    @DavidOrtinau - This might be a question for the Test Cloud team, but is there any update on when Xamarin.UITest will support all Xamarin.Forms supported platforms? I'm holding off on any further UITest work until I can use one set of tests across Android, iOS and UWP. Obviously, support for WinRT would also be useful too, but UWP is more important for me.

    Yeh, that's really a TestCloud discussion. I'll see what details I can get regardless.

  • Andrew.3192Andrew.3192 AUMember

    For February 2017, you list:

    • Deprecation of WP8

    Do you mean Windows Phone 8 or Windows Phone 8.1/Windows 8.1?

  • BrightLeeBrightLee KRMember ✭✭✭

    Cheer up!
    Thanks Xamarin.Forms team.
    I believe XF is the frickin future of mobile development. (+ even desktop)
    And what you guys have done so far is great job.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @Andrew.3192 said:
    For February 2017, you list:

    • Deprecation of WP8

    Do you mean Windows Phone 8 or Windows Phone 8.1/Windows 8.1?

    Windows Phone 8

  • VincentwxVincentwx CAMember ✭✭

    @DavidOrtinau said:

    @bprasad said:
    Also solve Issue with vs and make xaml previewer more strong ....most problem I face is designing the page...

    For sure, we can all expect XAML Previewer to only get better as it approaches release. You may already realize this, but although it's in the Stable channel, it is still a Preview release. We should try to get some kind of badge on it to make that clear.

    Can I expect the previewer will work in Visual Studio for android without a Mac connection? I was so surprised when learned an Mac is needed currently.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai
    edited January 5

    @Vincentwx said:

    Can I expect the previewer will work in Visual Studio for android without a Mac connection? I was so surprised when learned an Mac is needed currently.

    [EDIT] Pierce just told me I might be wrong about this. What?! Grabs pitch fork. I'm being told there's a fix and it's coming. Let me find out more and I'll report in another thread since Previewer isn't really on topic. [/EDIT]

    I think you're fine. Mac is required when doing iOS development. If you're doing Android on Windows and using Visual Studio you are fine. Here are some good resources about the XAML Previewer:

    https://developer.xamarin.com/guides/xamarin-forms/xaml/xaml-previewer/
    https://blog.xamarin.com/live-xaml-previewing-with-the-xamarin-forms-previewer/

  • VincentwxVincentwx CAMember ✭✭

    @DavidOrtinau I hope the MenuPage feature could make to 2.4.0 release. Is that possible? I think this feature is quite important if you are planning a new app right now.

  • PierceBogganPierceBoggan USForum Administrator, Xamarin Team, Developer Group Leader Xamurai

    @VincentWang: You can use a MasterDetailPage as a workaround in the meantime. The MenuPage just cuts down on the excessive amount of boilerplate code you need to have a flyout control. You can copy/paste my code from my Yammer clone, which products a pretty nice MenuPage:
    https://github.com/pierceboggan/learn-azure/tree/master/apps/unconnected-app

  • VincentwxVincentwx CAMember ✭✭

    @DavidOrtinau said:

    @Vincentwx said:

    Can I expect the previewer will work in Visual Studio for android without a Mac connection? I was so surprised when learned an Mac is needed currently.

    I think you're fine. Mac is required when doing iOS development. If you're doing Android on Windows and using Visual Studio you are fine. Here are some good resources about the XAML Previewer:

    https://developer.xamarin.com/guides/xamarin-forms/xaml/xaml-previewer/
    https://blog.xamarin.com/live-xaml-previewing-with-the-xamarin-forms-previewer/

    I tried lots of times every time when there is a new blog that mentioned it. It never worked and I am not alone. Others ran into this same problem as well.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @Vincentwx said:

    I tried lots of times every time when there is a new blog that mentioned it. It never worked and I am not alone. Others ran into this same problem as well.

    Yes, see my revised comment above. Sorry. I'm as surprised as you.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    We just posted a proposal draft for the Accessibility (A11y) Support feature in the Evolution forum. I've added the link above, but you can also get there here: https://blog.xamarin.com/live-xaml-previewing-with-the-xamarin-forms-previewer/

  • JeremyHerbisonJeremyHerbison CAMember ✭✭

    What about official .NET Standard support (with an updated VS template)? I know it works as-is with some extra steps, so this should be pretty easy.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @JeremyHerbison said:
    What about official .NET Standard support (with an updated VS template)? I know it works as-is with some extra steps, so this should be pretty easy.

    It's on our radar for sure. You'll see it appear on the roadmap in due course.

  • JohnHardmanJohnHardman GBUniversity ✭✭✭✭✭

    @PierceBoggan @DavidOrtinau -

    A while ago, I outsourced (at my own expense!) development of drag & drop functionality for use in my first app. There's still work to be done (the biggest bit is that UWP is not working currently), but the code so far can be found at https://github.com/johnshardman/XF_DragAndDrop

    If nothing else, it shows that it can be done (subject to getting it working on UWP). Any chance of the Xamarin.Forms team taking this over, completing & enhancing, to get it built into ListView at some point in future, even if a fairly distant future?

  • MichaelRumplerMichaelRumpler ATMember ✭✭✭✭
    edited January 6

    This is probably not the correct place, but I couldn't find any other info about the MenuPage in the evolution forum or the github pull requests.

    The MasterDetailPage can use the Master as a flyout so that it overlaps the Detail or they can be shown side by side when you use MasterBehavior=Split. Then the Detail width is not the full page width.
    What I am missing is that the user can swipe in/out the Master and the Details width is adjusted to be the rest of the page. The two pages should not overlap, but the user can still decide whether he wants to show the Master (Detail has less space) or not (Detail has full width).
    Maybe you can design the MenuPage so that it supports this (or enhance the MasterDetailPage).

    Where would be the proper place for this? In the evolution forum? In UserVoice? In the forms-devel mailing list? In Bugzilla? I still don't get the difference. You have too many tools!

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @JohnHardman said:
    @PierceBoggan @DavidOrtinau -

    A while ago, I outsourced (at my own expense!) development of drag & drop functionality for use in my first app. There's still work to be done (the biggest bit is that UWP is not working currently), but the code so far can be found at https://github.com/johnshardman/XF_DragAndDrop

    If nothing else, it shows that it can be done (subject to getting it working on UWP). Any chance of the Xamarin.Forms team taking this over, completing & enhancing, to get it built into ListView at some point in future, even if a fairly distant future?

    Thx @JohnHardman. That's certainly worth more conversation. I'll ping you directly.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @MichaelRumpler said:
    This is probably not the correct place, but I couldn't find any other info about the MenuPage in the evolution forum or the github pull requests.

    The MasterDetailPage can use the Master as a flyout so that it overlaps the Detail or they can be shown side by side when you use MasterBehavior=Split. Then the Detail width is not the full page width.
    What I am missing is that the user can swipe in/out the Master and the Details width is adjusted to be the rest of the page. The two pages should not overlap, but the user can still decide whether he wants to show the Master (Detail has less space) or not (Detail has full width).
    Maybe you can design the MenuPage so that it supports this (or enhance the MasterDetailPage).

    Where would be the proper place for this? In the evolution forum? In UserVoice? In the forms-devel mailing list? In Bugzilla? I still don't get the difference. You have too many tools!

    Yes, we want to have those kinds of conversations in the Evolution forum. We need to get our thoughts out there as we did yesterday with Accessibility so it's not just a mention on the Roadmap. And we didn't want to further delay the Roadmap. So, give me a bit to make that happen.

«13456711
Sign In or Register to comment.