I'm able to get -js-compiler-option to work. It's not ideal, but I can add
it to my examples.
I can't get ADVANCED_OPTIMIZATIONS to work with asjsc at all, though. Not
even the simplest example that I can think of. No externs required.
source/Example.as:
package
{
public class Example
{
public static function run():void
{
trace("hello world");
}
}
}
index.html:
<!DOCTYPE html>
<html>
<body>
<script src="bin/js-release/Example.js"></script>
<script>
Example.run();
</script>
</body>
</html>
Build command line:
asjsc Example.as
Any idea why?
- Josh
On Wed, Oct 21, 2015 at 12:26 PM, Alex Harui <[email protected]> wrote:
>
>
> On 10/21/15, 11:27 AM, "Josh Tynjala" <[email protected]> wrote:
> >
> >By the way, the SIMPLE_OPTIMIZATIONS argument for the closure compiler
> >might be an acceptable middle ground for minification. When I tried it, I
> >was able to load up my CreateJS demo and it actually rendered everything.
> >However, I noticed that it wasn't responding correctly to touch events, so
> >that's why I fell back to WHITESPACE_ONLY. At the time, I couldn't
> >investigate further, but maybe now I can figure out what's going on.
> >SIMPLE_OPTIMIZATIONS should minify a lot more than WHITESPACE_ONLY, and it
> >seems to work without externs.
>
> FWIW, SIMPLE didn’t seem to make a difference vs WHITESPACE_ONLY on the
> one example I tried. ADVANCED makes a big difference, dropping the
> example from 568K to 141K.
>
> I’m just pushed the -js-compiler-option changes and set the default back
> to ADVANCED. Or will it be a problem to have to add this option to your
> examples?
>
> It should just be:
> -js-compiler-option=“—compilation_level WHITESPACE_ONLY”
>
> -Alex
>
> >
> >Since Harbs mentioned Angular being minfied so well, it looks like they
> >use
> >closure compiler with SIMPLE_OPTIMIZATIONS for most of their codebase (one
> >particular file uses ADVANCED_OPTIMIZATIONS, for some reason):
> >
> >
> https://github.com/angular/angular.js/blob/d077966ff1ac18262f4615ff1a533db
> >24d4432a7/lib/grunt/utils.js#L188
> >
> >- Josh
> >
> >On Wed, Oct 21, 2015 at 10:45 AM, Alex Harui <[email protected]> wrote:
> >
> >>
> >>
> >> On 10/21/15, 10:16 AM, "Josh Tynjala" <[email protected]> wrote:
> >>
> >> >The cross-compiler that generates ActionScript from TypeScript
> >> >definitions?
> >> >Yeah, I could probably do that. Generating both ActionScript and
> >>externs
> >> >files adds some complexity that I'd prefer to hide from ActionScript
> >> >developers, though. Ideally, most developers wouldn't need to know
> >>about
> >> >the externs files.
> >>
> >> Actually, I was thinking that you could take the generated .as files and
> >> run them through FalconJX and package the JS as externs files.
> >>
> >> Today, any of the FlexJS SWCs like Core.swc have a build script that
> >>runs
> >> a couple of passes to cross-compile the AS to JS, then a final pass that
> >> compiles the AS into a SWC and packages the generated JS. It looks from
> >> the code, that if you put the JS in an externs folder inside the SWC and
> >> folks reference these SWCs on the external-library-path, that the right
> >> thing should happen.
> >>
> >> >
> >> >I guess I could redesign dts2as to look for FlexJS and ask it to
> >> >automatically build the final SWC file with both the generated
> >> >ActionScript
> >> >and the generated externs files. That would simplify my tutorials
> >>either
> >> >way, since developers won't need to run compc manually.
> >> >
> >> >What's the usual environment variable a developer might add for
> >>FlexJS? Is
> >> >it FLEXJS_HOME?
> >>
> >> FlexJS tries to look just like a regular Flex SDK, so folks should be
> >>able
> >> to use FLEX_HOME.
> >>
> >> -Alex
> >>
> >>
>
>