ToddThomson / tsproject

Typescript minifier and modular typescript bundle optimizer for gulp (Ts Vinyl Adapter).

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Announcement: TsProject 1.2.0 Release

ToddThomson opened this issue · comments

I have about another day or 2 of testing/debugging the minification feature of TsProject. The 2nd phase of the minifier allows for convention based internal class identifiers ( and their properties and methods ) to be shortened.
When TsProject ( built and minified with TsProject ) is stable Ill issue a final RC and then about a week later go to final.

I am still testing phase II of the minification feature. It may be 1 or 2 weeks before this feature is ready to be released.

Minification feature almost complete. NPM 1.2.0-rc.5 published. Master branch updated.

Latest NPM release is 1.2.0-rc.7

Updated to 1.2.0-rc.8. Last rc. I will address issue #72 before releasing the final 1.2.0 release.

Hey there! This is some awesome work you are doing. We use your project for exceptionless.js and even without your minification features (tsproject then uglify) created the most compact output of all alternatives that I tried. Will test the RC now and look if it can get even better - I think so, because most names could be mangled.

Though, we have one problem, and that is with source maps. Does tsproject even support them? If not, I could look into this and try my best to make it work.

@frankebersoll Thanks! As you may know TsProject builds, packages and minifies typescript source. It uses the Typescript AST and many internal services. The only thing that I could not do before the transpilation step is whitespace elimination. There is no access to the emitter. White space elimination completely relies on the services of the typescript scanner and is really simple, but it works by passing the bundle javascript source to the scanner.
My current thought on source maps is this: the final minified bundle IS 100% the same as the unminified version. I use source maps within the testing cycle only.
That said, many would not agree. It should be entirely possible to use the source maps gen feature of Typescript to pass the minified JavaScript back into the compiler. It would also be likely to process the generated source map from the minified ts source file when running the white space elimination method. Have a go at it!

@frankebersoll If you are keen on a source maps feature please add an issue for it. We can then discuss what the general requirements will be. Thanks.

@frankebersoll Let's use issue #78 for discussion of source maps. Hopefully we can get this feature into release 1.3.

Released.