Backwards compatibility and auto updates

Richard Bair richard.bair at oracle.com
Fri Jan 20 13:14:29 PST 2012


How are you deploying your apps?

On Jan 20, 2012, at 12:57 PM, Daniel Zwolenski wrote:

> Hey guys,
> 
> I've touched on this before but I am a bit (ok, very) worried about
> backwards compatibility and auto-updates, particularly in the area of
> visual appearance, and most obviously with CSS.
> 
> Let's take a seemingly innocent fix like this one:
> http://javafx-jira.kenai.com/browse/RT-16589
> 
> So now suddenly when JavaFX auto-updates itself (which I have very little
> control over), some of my font sizes may suddenly halve if they were
> impacted by this fix?
> 
> What if the fix was to do with visibility and suddenly an all important
> button is no longer visible, or to do with colours and now my white text is
> suddenly on a white background and can't be read. Aside from CSS, what if
> the fix was to an animation class, and suddenly my animation is 'fixed' so
> maybe a bug in the fade was making my node invisible, but now the fix makes
> it visible when I'm not expecting it to be, etc. This has the potential to
> completely break my GUI.
> 
> All of these *visual* aspects can't be tested with regression testing and
> API compatibility tests. A UI toolkit is not like a normal Java API where
> we can just say, yep it compiles and the unit tests all still work, so it
> will be fine. Even if we could do this, would we want to? We need to be
> able to fix visual things, and given the incredibly loose, highly-coupled
> way CSS does it's selectors (one tiny change to your CSS file can change
> everything) it will be pretty much impossible to do this without 'breaking'
> existing GUIs.
> 
> The problem in my mind is that we cannot 'fix' our apps to a particular
> version of JFX. This auto-update (and co-bundling) stuff is going to make
> life very hard in this field.
> 
> What are your thoughts? Does anyone else share these concerns?
> 
> Cheers,
> Dan



More information about the openjfx-dev mailing list