Ok I am doing a major code reorg now, since no one answered. Here is the
deal.
I will roll several jsf.js packages
a) A full package with everything
b) A minimal package without i18n support and additional features but
ie6 support included
c) An even smaller package with legacy browser support stripped and only
the latest browsers supported
Additional packages which can be combined with b an c
i18n support for the additional languages
legacy browser support
experimental (non jsf 2.1 spec) features
I think that should give the users the possibility to choose and combine
what they need.
I have not detailed filesize numbers but the overall package should be
slightly bigger while the minimal packages should be significantly
smaller. (Most people probably do not need the client side i18n for
instance and the additional features like the iframe file submit, while
mobile platforms as target can strip the entire legacy browser support out)
I am not sure which package in the future will be default for the
standard jsf.js, but I assume b) would make sense and a proper
documentation on how to include the rest.
The good news is that the code reorg helped me to isolate a load ie 6
and old mobile browser related code, which in the future then can be
dropped in an instance.
Werner
Am 10/14/11 1:51 PM, schrieb Werner Punz:
Hello I just want to start another discussion.
I have been checking the filesizes today of our jsf.js. We currently
have 106kbyte compressed. While this is tolerable I would suggest
following.
I tried a quick test where I stripped out all exeperimental non spec
features like the iframe transport the internationalized strings etc...
I came down to 76 kbytes. I probably by even more strict code stripping
would come down below 70Kbytes like we used to have before introducing
the internationalisation and iframe features.
Now here is are a few proposals:
a) We could externalize all the internationalisation into a separate js
file something like myfaces_extras.js. Our code fortunately is structued
in a way that this would be easily achievable.
This however would induce a second request. And we would have a
documentation problem to notify our users.
b) We could roll a jsf_minimized.js with all the features stripped and
we could patch the implementation accordingly, that if this script is
included the standard jsf.js is not included anymore.
c) Or we could go vice versa, making line in a the jsf.js the minized
version and add a full blown jsf_maximized.js to the mix.
What is your opinon about it. I personally think there must be at least
one minimized version in the system which does not show localized
messages etc...
Werner