Sep 1st, 2009, 05:23 AM
Is -keep-as3-metadata += Autowired really necessary?
I added "-keep-as3-metadata += Autowired" to my FB3 compiler args (as instructed in the 0.8 docs) but I didn't added it to my CI server's compile task. Guess what, the app built by the CI server appears to work fine without it.
Is "-keep-as3-metadata += Autowired" really required?
Sep 2nd, 2009, 03:30 AM
flex4/flex3 it depends...
I seem to remember that if you're using the Flex 4 compiler it isn't necessary because by default it keeps all metadata. (This is unconfirmed though so far).
With Flex3 though it is definitely required.
I'm not surprised your CI server compiles without trouble since the metadata is only used at runtime, therefore compilation will run faultlessly.
I'm pretty sure that if you'd take the .swf that you're CI server generates and ran your application that the injections wouldn't take place since the metadata is missing.
Hope that clears things up,
P.S. If you use your CI server to also run unit tests, you can check for this behavior by adding tests that make use of the metadata, that way you'll be sure that things are in working order.
Last edited by 666shooter; Sep 2nd, 2009 at 03:32 AM.
Reason: added P.S.
Sep 2nd, 2009, 04:52 AM
I did run the SWF build by the CI server and it worked!
I did run the SWF build by the CI server and it worked! That's why I did the original post. The CI server's using the 3.3 compiler so perhaps the "keep all metadata by default" compiler improvement you mention was added for 3.3?
Sep 2nd, 2009, 04:58 AM
Very interesting indeed, I haven't done any definite tests with this, but it is of course very much possible that the 3.3 SDK added this behavior.
I can't find any official info on this however, so until then I guess we need to keep this 'unconfirmed'.
Anyone else here have similar experience? Or maybe someone knows of an official statement from the SDK team surrounding this?