package:web_ui deprecation date

156 views
Skip to first unread message

John Messerly

unread,
Mar 11, 2014, 3:12:20 PM3/11/14
to w...@dartlang.org, Sigmund Cherem
If you don't use "package:web_ui", feel free to skip this email.

Hello Web UI users,

The Polymer.dart project, previously known as Web UI, has implemented all of the most important features of Web UI for some time now. Because we are now spending all of our time supporting Polymer.dart, it is now using 100% of the core code from Polymer’s platform.js, and it is aligned with the web components family of specifications, we feel it's time to plan for Web UI's retirement.

We plan to stop supporting the Web UI package as of June 30th, 2014. After that date, the Dart team will no longer keep the Web UI package working with future versions of the Dart SDK. (However, using the stable Dart 1.x SDK from that date should continue to work.)

If you use "package:web_ui", then we'd like to encourage you to upgrade to the latest version of Polymer.dart. By upgrading, you will be able to use the latest versions of the Dart SDK, be aligned with web component specs, and be able to interop with Polymer.js components. We apologize for the inconvenience. We know that many of you have production applications, and that upgrading is a non-trivial task.

Please continue to use w...@dartlang.org list for questions about migration. We appreciate all the feedback we've received during the early days of web components. Thanks for all the support, and we look forward to many more Dart apps using web components!

- John, Siggi

cassiot

unread,
Mar 11, 2014, 6:46:07 PM3/11/14
to w...@dartlang.org, Sigmund Cherem
I don't agree so much. I have 3 projects running with Web UI and I have no problems with it. However I can't work with polymer. Every time I try it I find another problem.

First of all. I post a possible problem here and there is no one pointing if it is a bug or my mistake. Anybody tried it or nobody cares?


And I have another one now. Something that work in dart but in javascript. Should I post it here? What about my last one right above?

And the last one. The output is at least 5x bigger than Web UI. 2 MB for a sample project?

There are problems with Web UI too, but It is much more stable IMO.

John Messerly

unread,
Mar 11, 2014, 7:47:21 PM3/11/14
to w...@dartlang.org, Sigmund Cherem
Hi, genuinely sorry for the bad news. That is unfortunately life with a young, bleeding edge library. I hope the goodness we can bring with new features (cool widgets at long last) will make up for the pain of testing the prerelease versions.

On Tue, Mar 11, 2014 at 3:46 PM, cassiot <cas...@gmail.com> wrote:
I don't agree so much. I have 3 projects running with Web UI and I have no problems with it. However I can't work with polymer. Every time I try it I find another problem.

First of all. I post a possible problem here and there is no one pointing if it is a bug or my mistake. Anybody tried it or nobody cares?


Replied to your post.  


And I have another one now. Something that work in dart but in javascript. Should I post it here? What about my last one right above?

Stack overflow is usually a better resource for questions. Or filing a bug at dartbug.com/new, if you think it is a bug. You can post here, but we are very busy working on Polymer.dart, so we can't really troubleshoot until we get enough information.

And the last one. The output is at least 5x bigger than Web UI. 2 MB for a sample project?

That shouldn't happen. Have a look at the output of dart2js and see how many methods it is retaining, and if there is any dart:mirrors used in your code or a package you import (polymer and observe are okay, we make sure those use @MirrorsUsed).

There are problems with Web UI too, but It is much more stable IMO.

Well, sure. It's an old version of our code that isn't being actively developed ;). The issues with it are all well known, and if you don't change your Dart SDK it will keep working. We just can't promise it will work against *newer* Dart SDKs as of date I mentioned.

Cheers, - John

cassiot

unread,
Mar 12, 2014, 1:31:12 AM3/12/14
to w...@dartlang.org, Sigmund Cherem
Hi John, again. :)

Hi, genuinely sorry for the bad news. That is unfortunately life with a young, bleeding edge library

Yes, I agree. That's why I was trying polymer. The problem is that I can't even make my projects run with it. Not because I don't know how to use it, but because of some bugs. I see people talking about polymer for months. I thought that I would just jump to it and be fine. That's not my case until today.


Stack overflow is usually a better resource for questions. Or filing a bug at dartbug.com/new, if you think it is a bug

It was not a question.I'm almost sure it is a bug, so I post it here because more people can look at it and give their opinions. Yes, that can be done at dartbug.com too, but I think that here it has more visibility.

That shouldn't happen. Have a look at the output of dart2js and see how many methods it is retaining, and if there is any dart:mirrors used in your code...

No there isn't any mirrors in my code. All warnings that I saw were from polymer lib.

But I checked it again and it seems that the latest versions are generating smaller outputs. It is still bigger that web ui output, but it has improved a lot. I'll check it again when I migrate my projects.

Thanks

Günter Zöchbauer

unread,
Mar 12, 2014, 5:53:43 AM3/12/14
to w...@dartlang.org, Sigmund Cherem
@John, may I ask about what widgets you are talking?

Siggi Cherem

unread,
Mar 12, 2014, 1:43:48 PM3/12/14
to Günter Zöchbauer, w...@dartlang.org
Hi Günter,

On Wed, Mar 12, 2014 at 2:53 AM, Günter Zöchbauer <gzo...@gmail.com> wrote:
@John, may I ask about what widgets you are talking?

I think John was referring to the fact that the latest prerelease of polymer can now interoperate with polymer elements written in Javascript. This can work great for custom elements that are well encapsulated and that don't depend on objects being passed through bindings. We don't have polymer.js elements bundled as a pub package, but it would be possible to do so in the future. 

We haven't played enough to know what are the performance implications of using polymer.js elements, but we expect there to be some overhead involved because of the interop-layer. I personally think that porting some elements to Dart (like what you and Erik have done with polymer_elements/polymer_ui_elements) is still going to be important. But, with interop, we can start using polymer.js elements and prioritize what we port to Dart based on usage and what optimizations are needed.

Cheers,
Siggi

Günter Zöchbauer

unread,
Mar 12, 2014, 3:22:34 PM3/12/14
to w...@dartlang.org, Günter Zöchbauer
Hi Siggi, 

thanks for the update!
That makes sense.

What is bothering me since a while:
Do you have any plans for porting pointer-events and web-animation or is this intended to be used as polyfill anyway
which should just be loaded as JavaScript like shadow_dom.xxx.js or mutation_observer.min.js
There was a "PolymerDart port from JS status page" where these were marked as 'not started' (haven't looked a long time, don't even know where I find the page just now) but this was an indication for me that it should be ported.

The most interesting polymer-elements make use of them (overlay, dropdown (menu), splitter, ...). 
I took a stab at porting web-animation a while back but got stuck at some point where monkey-patching started.
The same with pointer-events.
I have still no idea how this could be done or if it should be done from Dart.

Any thoughts?

Thanks
Günter

John Messerly

unread,
Mar 12, 2014, 3:46:57 PM3/12/14
to w...@dartlang.org, Günter Zöchbauer

The hope is Web Animations will be implemented in Blink (and therefore available in Dartium via C++ code and polyfilled via the JS code).

--
You received this message because you are subscribed to the Google Groups "Dart Web Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to web+uns...@dartlang.org.
Visit this group at http://groups.google.com/a/dartlang.org/group/web/.
To view this discussion on the web visit https://groups.google.com/a/dartlang.org/d/msgid/web/7f04794a-4867-49e3-806a-9953c91bd1e0%40dartlang.org.

Günter Zöchbauer

unread,
Mar 12, 2014, 3:50:22 PM3/12/14
to John Messerly, w...@dartlang.org
Hi John,

thanks for the update.
I had the impression that it's going in this direction. 
Isn't this also the case for pointer-events?


Mit freundlichen Grüßen

Günter Zöchbauer
gue...@gzoechbauer.com
+43 (699) 10 18 87 15

John Messerly

unread,
Mar 17, 2014, 2:47:06 PM3/17/14
to Günter Zöchbauer, w...@dartlang.org
To be honest, I'm not sure about Pointer Events. I think it will work already with the platform.js polyfill to use them as shown here: https://github.com/Polymer/PointerEvents#basic-usage. Accessing data inside the PointerEvent would require "dart:js" interop though, until we create some typed wrappers. Same story for extensions to the Element interface.

george.moschovitis

unread,
Mar 17, 2014, 3:17:14 PM3/17/14
to w...@dartlang.org, Günter Zöchbauer
Any ETA for this improved (working) version of Polymer?
And while we are at it, any ETA for Polymer support in Dart Editor, similar to the support for Angular?

-g.

John Messerly

unread,
Mar 17, 2014, 4:54:29 PM3/17/14
to w...@dartlang.org, Daniel Rubel, Brian Wilkerson, Konstantin Scheglov, Günter Zöchbauer
On Mon, Mar 17, 2014 at 12:17 PM, george.moschovitis <george.mo...@gmail.com> wrote:
Any ETA for this improved (working) version of Polymer?

I'm not sure I understand the question. Right now we have 0.10.0-pre.2 and 0.9.5. Both can be used today, as far as I know.
 
And while we are at it, any ETA for Polymer support in Dart Editor, similar to the support for Angular?

added a few folks who may be able to answer this :)

Konstantin Scheglov

unread,
Mar 17, 2014, 4:57:30 PM3/17/14
to John Messerly, w...@dartlang.org, Daniel Rubel, Brian Wilkerson, Günter Zöchbauer
 
And while we are at it, any ETA for Polymer support in Dart Editor, similar to the support for Angular?

added a few folks who may be able to answer this :)

  Somewhere in Q2 if nothing change in our plans.



--
Konstantin Scheglov
Software Engineer
Google, Inc.

george.moschovitis

unread,
Mar 17, 2014, 5:09:10 PM3/17/14
to w...@dartlang.org, Daniel Rubel, Brian Wilkerson, Konstantin Scheglov, Günter Zöchbauer

I'm not sure I understand the question. Right now we have 0.10.0-pre.2 and 0.9.5. Both can be used today, as far as I know.

I was referring to 0.10.0 (non-pre).

John Messerly

unread,
Mar 17, 2014, 6:18:58 PM3/17/14
to w...@dartlang.org, Brian Wilkerson, Günter Zöchbauer, Konstantin Scheglov, Daniel Rubel

Oh, -pre is still there because it might have breaking API changes before 0.10.0. We try to collect API changes, otherwise we'd quickly go from 10->11->12->13... It helps with documentation too, for the same reason.

If -pre.2 works for you then there's no reason to wait :)

On Mar 17, 2014 2:09 PM, "george.moschovitis" <george.mo...@gmail.com> wrote:

I'm not sure I understand the question. Right now we have 0.10.0-pre.2 and 0.9.5. Both can be used today, as far as I know.

I was referring to 0.10.0 (non-pre).

--
You received this message because you are subscribed to the Google Groups "Dart Web Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to web+uns...@dartlang.org.
Visit this group at http://groups.google.com/a/dartlang.org/group/web/.

Don Olmstead

unread,
Mar 17, 2014, 6:22:48 PM3/17/14
to w...@dartlang.org
Are there any issues with pub build and pre.2? Was having some issues yesterday with it.

Don't have the code in front of me now but if I'm remembering correctly it was something on 'endsWith'. Would have to double check when I get home.


John Messerly

unread,
Mar 17, 2014, 7:48:26 PM3/17/14
to Günter Zöchbauer, w...@dartlang.org
RE PointerEvents:

I just noticed some native implementation is happening in Blink. For example:

george.moschovitis

unread,
Mar 18, 2014, 12:02:35 AM3/18/14
to w...@dartlang.org, Brian Wilkerson, Günter Zöchbauer, Konstantin Scheglov, Daniel Rubel

Oh, -pre is still there because it might have breaking API changes before 0.10.0. We try to collect API changes, otherwise we'd quickly go from 10->11->12->13... It helps with documentation too, for the same reason.

If -pre.2 works for you then there's no reason to wait :)

So my original question stands: When is the ETA for 0.10.0 (non-pre). In other words, when will the API stabilize?
And hopefully you will provide some more info about the breaking changes?

Günter Zöchbauer

unread,
Mar 18, 2014, 12:51:01 AM3/18/14
to w...@dartlang.org
John, thank you for the info.
I will take a look if I can get this working.

Mit freundlichen Grüßen

Günter Zöchbauer
gue...@gzoechbauer.com
+43 (699) 10 18 87 15


--
You received this message because you are subscribed to a topic in the Google Groups "Dart Web Development" group.
To unsubscribe from this topic, visit https://groups.google.com/a/dartlang.org/d/topic/web/d2JTkHC-5g0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to web+uns...@dartlang.org.

John Messerly

unread,
Mar 18, 2014, 3:14:03 PM3/18/14
to w...@dartlang.org, Brian Wilkerson, Günter Zöchbauer, Konstantin Scheglov, Daniel Rubel
Hi George,

On Mon, Mar 17, 2014 at 9:02 PM, george.moschovitis <george.mo...@gmail.com> wrote:

Oh, -pre is still there because it might have breaking API changes before 0.10.0. We try to collect API changes, otherwise we'd quickly go from 10->11->12->13... It helps with documentation too, for the same reason.

If -pre.2 works for you then there's no reason to wait :)

So my original question stands: When is the ETA for 0.10.0 (non-pre).

Sorry about that. I honestly don't know, so was trying to help as much as I could :). Generally we try not to announce dates if we're unsure.

Does having 0.10.0 be the version number help for some reason?

We're all trying to figure out this Pub versioning :). From what I can tell, some folks prefer to track the latest stuff, others prefer to upgrade at a slower pace. We're trying to accommodate that with this new scheme, is all.
 
In other words, when will the API stabilize?
And hopefully you will provide some more info about the breaking changes?

For the 0.10.0 release, there are a few more changes coming to improve our ability to infer @reflectable and @MirrorsUsed annotations without needing them to be so explicit. Basically, get rid of the "you forgot an annotation" errors at runtime in dart2js (without making code size bigger).

If you mean Polymer and Web Components in general, there are various things changing because of the web standards proposals. Shadow DOM CSS has a few more changes which you can see in http://dev.w3.org/csswg/shadow-styling/. enteredView/leftView will be renamed soon to match the latest http://w3c.github.io/webcomponents/spec/custom/. TemplateBinding and NodeBinding will have some changes: https://groups.google.com/d/msg/polymer-dev/7D5jd6pknR0/PMLzLgUWWc8J. Probably more things I'm forgetting. Before anyone asks: I don't know when these will happen :). But if anyone has a convenient time machine or crystal ball, I'd like to hear the answer too ;-)

Cheers,
- John

Seth Ladd

unread,
Jul 18, 2014, 12:10:13 PM7/18/14
to w...@dartlang.org, Sigmund Cherem
Friendly reminder, we've formally stopped supporting Web UI. As mentioned below, Web UI will continue to work with previous versions of the Dart SDK.

We really appreciate all the feedback and we know that migrating any production apps is non-trivial. Please send questions about polymer.dart to this list and to Stack Overflow. Thanks again for the support and questions.


--
You received this message because you are subscribed to the Google Groups "Dart Web Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to web+uns...@dartlang.org.
Visit this group at http://groups.google.com/a/dartlang.org/group/web/.
Reply all
Reply to author
Forward
0 new messages