I have a project based on Flex 4 Beta 2 and now I wanted to migrate to the latest nightly build since there were many important fixes.
Things have changed so here what I did to get my project up and running again:
Halo is now mx
The namespace for halo (Flex 3) components changed from xmlns:mx=”library://ns.adobe.com/flex/halo” to xmlns:mx=”library://ns.adobe.com/flex/mx”. Just do a quick search and replace and this one is solved. Also do not forget to update you CSS file namespace to @namespace mx “library://ns.adobe.com/flex/mx”;
Flex 3 compatibility mode is gone
My project originally was based on Flex 3 so I used the Flex 3 compatibility option in Flex 4 Beta 2. This does not seem supported anymore and you get lots of dependency errors for halo/mx components that they require at least 4.0.0. So disable the Flex 3 mode and select the halo theme to be still compatible with Flex 3 aka halo components.
Ant
I build my AIR project with Ant so I had to define to use the halo theme:
<compiler.theme dir="${flex.sdk.dir}/frameworks/themes/Halo/"> <include name="halo.swc" /> </compiler.theme>
In my case I switched to build 4.0.0.13323 and it looks pretty cool. The compiler seems faster and my app in general performed well. There is now also a Spark ToggleButton but a few things are still missing like IconButton, SparkAlert and so on. Anyway, I use Flex 4 for production already and feel pretty solid about it. The workflow is way better than with Flex 3 because of the new state syntax, better skinning, FXG, light weight groups etc.





I totally agree – flex 4 is an awesome upgrade from flex 3! I’m a little amazed at how much they’ve managed to keep backwards compatible actually. They even extended the original halo components to match the new workflow of the states syntax and such.
Thanks you so much!!! I couldn’t find anywhere a soloution to why some of my mx:…. were no longer recognized, pissed that there isn’t some way to have found out the namespace change easier…
Support for compatibility with Flex 2 and earlier has been removed, but Flex 3 compatibility mode is supported.
In Flash Builder you should be able to go to Project > Properties > Flex Compiler and check “Use Flex 3 compatibility mode”.
Note that while using Flex 3 compatibility mode you will be limited to Flex 3 components and won’t be able to add any spark features or components including s:Application.
If you want to mix and match halo and spark components, but still have the halo components look like they used to in Flex 3 then you can change the theme.
Here is a link to more information on what compatibility mode does other than just changing the theme:
http://labs.adobe.com/wiki/index.php/Flex_4:Backward_Compatibility
Hi,
are you still using 4.0.0.13323 or did you upgrade to the latest stable nighlty builds 4.0.0.13875 from 29th of January? I wanted to upggrade from beta 2 to 13875 yesterday and have problems (it seems it doesnt work even if it is stable nightly build, please read more here
http://franto.com/problems-with-latest-stable-flex-4-nightly-build
and here is discussion on http://forums.adobe.com/thread/552806?tstart=0
I’m still searching for latesta stable nightly build, which really works and it seems 4.0.0.13323 works for you, so I can try it as well.