Monday, July 9, 2012

jQuery 2.0 Drops Support for IE6, 7 and 8

In a surprise announcement on the jQuery blog the team has decided that jQuery 1.9 will be the last edition to support legacy editions of Internet Explorer. jQuery 2.0 — planned for release in 2013 — will no longer support IE6, 7 and 8.

In essence, jQuery 2.0 will be a leaner, faster library without old IE bloat such as DOM selection routines, different event models and HTML5 shims. jQuery 1.9 will continue to be developed and support the older IEs. The team advise that you’ll be able to support every browser using conditional comments, e.g.

<!--[if lt IE 9]>
    <script src="jquery-1.9.0.js"></script>
<![endif]-->
<!--[if gte IE 9]><!-->
    <script src="jquery-2.0.0.js"><</script>
<!--<![endif]-->
 
No one expects old editions of IE to be supported forever and some will applaud the decision to abandon browsers which have caused development grief for many years. But the statement is surprising for several reasons.
First, while IE6 and 7 usage has fallen to below 2%, they remain the browsers of choice for many large corporations, government departments and the Chinese. IE8 is likely to fall below 10% by 2013 but it’s the latest edition available to those on Windows XP. Almost one in three people use the OS and, while it’s dying, it’s lingering far longer than Microsoft anticipated.

[The following section has been revised. Thanks to everyone who pointed out the error in the original code.]

Second, conditional comments. Really? We’re still resorting to browser detection in 2013? That practice should have died out in 1999. Conditional comments were a temporary hack and have been dropped in IE10. JavaScript or server-side browser sniffing is no better.

It also introduces the problem of having two forked code bases for the same library. Inevitably, there will be bugs and differences between 1.9 and 2.0 — especially as jQuery evolves beyond those editions. What do you do when your code works in one but not the other?

Third: the primary reason developers use jQuery is to circumvent browser compatibility issues. The original purpose of jQuery, Prototype, Mootools, YUI and similar libraries was to provide a consistent set of objects and methods which abstracted the differing browser APIs. Wrappers are placed around features such as DOM selection and event delegation to smooth out implementation wrinkles.

Today, the differences between modern browsers is negligible. Consider the DOM querySelectorAll(CSS selector) method; it’s supported everywhere (even in IE8) and will always be faster than jQuery’s $(CSS selector). Core JavaScript features such as traversal, manipulation, events and Ajax are usable everywhere. jQuery’s animations and effects can also be replaced by CSS3. jQuery 2.0 will still provide useful utilities and compatibility fixes but, without legacy IE support, there’s less reason to use it.

Fourth is the confusion the update will cause. Currently, developers can usually migrate to the latest version without breaking their scripts. It doesn’t matter how much publicity jQuery 2.0 receives, many people will think it’s “better” than version 1.9. They’ll upgrade then complain bitterly when their site fails in IE7.

Saturday, July 7, 2012

Zend Framework 2.0.0beta5 Released!


The Zend Framework community is pleased to announce the immediate availability of Zend Framework 2.0.0beta5. Packages and installation instructions are available at: http://packages.zendframework.com/
This is the fifth and last in a series of planned beta releases. The beta release cycle has followed the "gmail" style of betas, whereby new features have been added in each new release, and backwards compatibility (BC) has not been guaranteed. The desire has been for developers to adopt and work with new components as they are shipped, and provide feedback so we can polish the distribution.
Our plan at this time is to do some cleanup of the repository, fix some outstanding issues and features, migrate documentation to a new repository and format, and then begin the release candidate process. At this time, we anticipate few if any BC breaks between now and the first release candidate (RC). Applications built today on beta5 will operate in the way we expect them to for the stable release.
Beta5 had a rigorous and busy schedule. We tackled a number of consistency issues, and solidified the security the framework offers via several fixes and the new Escaper component. We processed over 400 pull requests again, in a shorter timeframe than we had for beta4; the community really pulled together to get this release out the door.
There are three primary new features for the release:
  • Zend\Escaper, which provides an OWASP-compliant solution for context-specific escaping mechanisms targetting HTML, HTML attributes, URLs, CSS, and JavaScript.
  • Zend\I18n, which leverages PHP's ext/intl extension to provide localization, and also provides a new translation component.
  • Zend\Form now has new annotation support, allowing you to define annotations in your domain entities that can then be used to build a form and its related input filter and hydrator. Annotation support now has a dependency on Doctrine\Common's annotation library, for our default annotation syntax parser.

Monday, July 2, 2012

jQuery 1.8 goes beta and grunts custom versions

Customisation is key to the just announced beta 1.8 version of the jQuery JavaScript library. It is now possible to exclude modules from jQuery using a new build system based on grunt; this allows developers to drop modules for ajax, css, dimensions, effects or offset, depending on what their web application actually needs, reducing the amount of jQuery code downloaded to the browser. With all those modules excluded, jQuery is a lean 21KB (minified and gzipped), but the developers stress this is an optional process and they will continue distributing the complete library through content delivery networks. Details of the build system are available in the README file.

 jQuery 1.8 beta also aims to ease the pain of vendor prefixes for CSS features that aren't yet standardised by automatically expanding property names for the current browser through the .css() function. A cleanup and rework of the animation engine has been so extensive, that there are now new extension points that should make it easier to add or modify animations, but documentation is currently sparse. The Sizzle CSS selector engine has also had a major rewrite resulting in a "widespread performance improvement", enhanced shortcuts and better handing of more edge cases and browser bugs.

The developers are also warning that in jQuery 1.9, the version after 1.8, they will be tightening up on the HTML taken by the $()function. This is because cross site scripting attacks could make use of the behaviour of the function to execute code in <script> tags. jQuery will become more careful about what it accepts as HTML code within $(), only allowing strings which start with "<" to be regarded as such. Preceding that tightening, jQuery 1.8 has a new method, $.parseHTML which lets the system turn strings into HTML and parse HTML into DOM fragments.

jQuery 1.8 beta also marks the removal or deprecation of a number of "trip hazards" including $.browser browser detection, $.sub which failed to be useful or robust enough and global ajax events which had become an inefficient special case. Full details of the changes in jQuery 1.8 beta 1 can be found at the end of the announcement. The MIT or GPLv2 licensed jQuery 1.8 beta 1 can be downloaded and the source is available from the project's Github repository.

Most Used PHP Framework-The Popular Top 7 List in year 2011







You can read the original post here : http://www.php-developer.org/most-used-php-framework-the-popular-top-7-list-in-year-2011/