Thx for the suggestion to use tags. I think I can make good use of it.

The tag tags the entire file, not just the Ext.define that follows, right?

Are there other compiler macros available? I have seen '@require' and '@define'.

Can we mark parts of a file to be ignored (excluded) by the compiler, maybe based on tags?
Can we tell the compiler to ignore certain 'require' statements that are only used during development to instruct Ext.Loader?
I guess we could use Ext.require statements that are not supported by the compiler (e.g. Ext.require(varName), but maybe there is a better way.

Also, we used JsBuilder statements like //<debug> and also added our own statement to include/exclude profiling code via //<profile>. I see the new compiler still supports //<debug> but does it also support //<if option>?

I think we can implement most of our requirements to use tags and file based selection. It would still be nice to get some feedback on the details of the new compiler.

The directives like "//<debug>" and "//<if>" can eliminate code during compilation, but not (currently) dependencies. So using these in a "requires" array won't have the desired effect.

We are migrating as much of the build process as possible out of the internals of Sencha Cmd and into build scripts that you can see and/or edit (plus configure via properties). At present we don't have a way for you to inject "excludes" into the application compile step, but we plan to address this part before GA. This piece is logged as SDKTOOLS-176.

If the guide does not answer your question(s), please feel free to start a thread and describe what is wrong/missing in the guide so we can fix those bugs as well. It is obviously a critical aspect to such an endeavor to have reliable documentation. We have really stressed that in this version. :)

29 Sep 2012, 7:39 PM

dongryphon

Looking at the log output it is not really apparent why you aren't getting any files in your compilation. You can try the "--trace" option to get even more output but please be prepared for a flood of messages... in fact you will surely want to direct it to a file ;)

Kevin (the "compiler guy") may have some ideas next week.

29 Sep 2012, 8:11 PM

mberrie

Huh!

Not sure why I didn't notice the docs.

Could have saved me an hour or two yesterday LOL

29 Sep 2012, 11:46 PM

mberrie

Back to my original problem, the "include -r -f bundle1.js" not working.

Problem/solution: bundle1.js was not on the classpath! It worked once I added it.

I thought the compiler would pick it up relative to the working directory.
It makes sense to me now that it doesn't and that it exclusively works on the classpath.

It would be helpful to get some kind of hint in debug output. Maybe a warning if an include filter does not match anything?

But in the end it was just a conceptual misunderstanding on my part due to a lack of experience with the tool.

Btw, I am really impressed so far!

30 Sep 2012, 12:40 AM

dongryphon

Quote:

Originally Posted by mberrie

Back to my original problem, the "include -r -f bundle1.js" not working.

Problem/solution: bundle1.js was not on the classpath! It worked once I added it.

That is great news. :)

Quote:

Originally Posted by mberrie

It would be helpful to get some kind of hint in debug output. Maybe a warning if an include filter does not match anything?

But in the end it was just a conceptual misunderstanding on my part due to a lack of experience with the tool.

Good suggestion. Sorry that wasn't there already - kind of an obvious diagnostic.

Quote:

Originally Posted by mberrie

Btw, I am really impressed so far!

Thanks :)

30 Sep 2012, 12:46 AM

dongryphon

I've logged SDKTOOLS-177 to get better diagnostic support for compiler set criteria that don't match anything in the classpath.

Thanks for your patience for getting to the bottom of the issue and for replying with the details - much appreciated.