jQuery → Вышла библиотека jQuery версии 1.7.1
Как и у всякого обновления, отличающееся только цифрою после последней точки, здесь речь идёт не о внедрении крупных новинок, а об исправлении целого ряда неприятных багов (и об изменении багоподобных мелких особенностей), которых на сей раз насчитывается три десятка.
Каждый волен самостоятельно отобрать среди них наиболее важные для себя. Лично мне существенными показались вот какие:
- $(document).text() перестанет всегда возвращать пустую строку;
- $.error теперь швыряет instanceof Error;
- при создании DOM-элементов
вызовом $('<…>') перестанет подтекать память;
- анимация ширины, заданная приращением процентов в духе
$('div').animate({ width: '-=5%' }), будет приводить к изменению ширины в процентах же(как и было в jQuery 1.6.4), а не в пикселах(как в jQuery 1.7).
jQuery → Заметки о выходе второй беты jQuery 1.7
Во-первых, мощно улучшили поддержку HTML5 в IE. Насколько я могу судить
Во-вторых, методы outerWidth(), .outerHeight(), .innerWidth(), .innerHeight() теперь будут работать у объектов window
В-третьих, появилась поддержка CommonJS: jQuery саморегистрируется как асинхронный модуль. Прежде для этого jQuery приходилося пропатчивать.
Окромя названных выше улучшений,
Wiki-технология → Вышел движок MediaWiki 1.17. Моё расширение, подменяющее jQuery, по-прежнему работоспособно в нём. Но в будущем (для MediaWiki 1.18) появится более элегантное решение.
22 июня 2011 года Фондом Викимедиа выпущена в свет очередная стабильная версия движка MediaWiki — версия 1.17. Соответствующую новость на английском языке вы без труда найдёте в рассылке mediawiki-announce, снабжённую гиперссылками на подробный список изменений и инструкции по апгрейду.
Одной из основных (и даже ключевых) новостей этой версии стало появление и внедрение уникального движка ResourceLoader, целью которого является автоматическая сборка «ресурсов» (конгломератов джаваскрипта и CSS, из которых собирается один общий файл CSS и один общий файл джаваскриптов) с учётом их взаимной зависимости (например, jQuery UI зависит от jQuery) и с последующей минификацией. Два ресурса, содержащие служебные скрипты MediaWiki и библиотекуjQuery 1.4.2, подключаются автоматически в любом случае.
Те из вас, кто хочет использовать более новую версию jQuery,по-прежнему могут для этого воспользоваться тем моим способом и расширением, о котором я рассказывал 12 дней назад вот в этом же блоге. Как ни странно, мне не пришлось переменить ни буквы в его коде PHP для обеспечения работоспособности в MediaWiki 1.17 — это приятная удача, несмотря на то, что (в силу сложности ResourceLoader) прежняя возможность несложно «выкусить» вызов библиотеки jQuery, встроенной в MediaWiki, исчезла совершенно. Так что теперь моё расширение «побеждает» всего лишь потому, что вставляет вызов новой jQuery чуть раньше, чем ResourceLoader начинает грузить старую. По-видимому, библиотека jQuery 1.4.2 достаточно разумна для того, чтобы не подменять новую версию себя самóй. Однако печально, что теперь (в отличие от 1.16) моё расширение не позволяет загрузить одну версию jQuery (свою) вместо другой (встроенной в движок): в 1.17 они грузятся совместно, что неэкономно.
Одной из основных (и даже ключевых) новостей этой версии стало появление и внедрение уникального движка ResourceLoader, целью которого является автоматическая сборка «ресурсов» (конгломератов джаваскрипта и CSS, из которых собирается один общий файл CSS и один общий файл джаваскриптов) с учётом их взаимной зависимости (например, jQuery UI зависит от jQuery) и с последующей минификацией. Два ресурса, содержащие служебные скрипты MediaWiki и библиотеку
Те из вас, кто хочет использовать более новую версию jQuery,
jQuery → Вышла первая бета-версия jQuery 1.6
Код jQuery beta 1 доступен для скачивания из jQuery CDN.
Список изменений в этой версии состоит из 45 строк, упоминающих 47 решённых проблем. Большей частью они посвящены обезжучиванию (избавлению от багов) и отлаживанию (избавлению от лажи), но там есть и с полдесятка небезынтересных новинок:
- Подобно методу .bind(), методы .delegate() и .live() теперь приемлют false в качестве сокращения
кода function(){return false;}.
- Методы .is() и .not() теперь умеют принимать элементы DOM и коллекции jQuery в качестве аргументов.
- Метод .clean() не будет воздействовать на элементы script,
не имеющие типа «text/javascript».
- В методе .css() появилась поддержка строк, содержащих относительные значения.
- Новая функция requestAnimationFrame будет использоваться вместо прежней setInterval для анимаций, если она есть во браузере.
jQuery → Новая версия: jQuery 1.5.1
Резиг перечислил сорок два основных изменения, которые были внесены в эту версию jQuery. В основном они сводятся к обезжучиванию, к избавлению от багов. Но есть и одно видимое изменение —
1) Настройка isLocal управляет осознанием используемого протокола в качестве локального, то есть позволяет дополнить автораспознавание jQuery, которое в настоящее время считает локальными только те ресурсы, которые загружаются по протоколам «file»,
2) Настройка mimeType позволяет переопределить
3) Настройка xhrFields позволяет передать массив необходимых установок (для каждой указав fieldName и fieldValue, то есть имя и значение некоторого поля) в объект XHR. Скажем, можно придать withCredentials значение true, если понадобится запросить сервер из другого домена и послать туда логин, пароль и cookies
Эта версия
Firefox → Совместимость дополнений с Firefox 4: время начинать
Как многим из вас ужé хорошо известно, несколько недель тому назад вышла первая бета браузера Firefox 4. Очень скоро за нею последует и вторая, а итоговая версия ожидается позднее в этом году. Этот сравнительно долгий переходный период идёт на пользу разработчикам дополнений, так как он даёт нам много времени на обновление и проверку наших расширений для Firefox 4. С другой стороны, этот новый значительный выпуск станет щеголять массою новых функций, и нарушит множество необходимых нам вещей, так что обновление большинства дополнений для поддержки его не окажется простой задачею. Эта блогозапись — одна из многих, осведомляющих разработчиков о совместимости с Firefox 4.
Прежде всего, MDC вам друг: «Firefox 4 for developers». Это документ, который должен и будет содержать все сведения, надобные веборазработчикам и разработчикам дополнений, окружившим Firefox 4. Убедитеся, что посещаете этот документ регулярно и ищете в нём изменения. Если вам известноо чём-нибудь, чего в этом документе недостаёт — дайте нам знать.
И вот несколько ключевых фрагментов из этого документа.
Прежде всего, MDC вам друг: «Firefox 4 for developers». Это документ, который должен и будет содержать все сведения, надобные веборазработчикам и разработчикам дополнений, окружившим Firefox 4. Убедитеся, что посещаете этот документ регулярно и ищете в нём изменения. Если вам известно
И вот несколько ключевых фрагментов из этого документа.
JavaScript → Prototype 1.6.1: быстрее, чище, команднее
Поздравляем Эндрю Дюпона (Andrew Dupont) и Тоби Ланжеля (Tobie Langel) (нового официального соведущего ядра Prototype) с выходом нового 1.6.1:
Вот несколько симпатичных изменений. Хотя с неподдельным волнением ожидаю увидеть работу нового Prototype 2.0 и как команда перезагрузит Prototype.
- Полная совместимость с новыми браузерами. Эта версия Prototype полностью поддерживает 1.0 и более крупные версии Google Chrome, и Internet Explorer 8 как в режиме совместимости, так и в суперстандартном.
- Сохранение метаданных в элементах. С лёгкостью объединяйте джаваскриптовые пары ключей и значений с элементами DOM. Поглядите блогозапись, с которой это началось.
- Новые события мыши. Собственнические события Internet Explorer — «mouseenter» и «mouseleave» — теперь доступны для всех браузеров.
- Улучшенное быстродействие и домовитость. Часто использовавшиеся методы Function#bind, String#escapeHTML и Element#down стали быстрее, и Prototype лучше прибирает за собою.
- Собрано со Sprockets. Теперь вы можете включать репозиторий исходного кода Prototype в своё приложение и использовать Sprockets для управления зависимостями и для распространения.
- Внутреннее документирование посредством PDoc. Наша документация по API теперь хранится внутри исходного кода посредством PDoc, так что проще посылать патчи или лицезреть документацию по конкретной версии.
Вот несколько симпатичных изменений. Хотя с неподдельным волнением ожидаю увидеть работу нового Prototype 2.0 и как команда перезагрузит Prototype.