Релиз Cordova 5.2.0
Сегодня вышел новый релиз Apache Cordova — 5.2.0.
Основные изменения в данном релизе это
- Поддержка флага --browserify
- Поддержка Windows в plugman
- Новая команда clean
- Использование ~ вместо ^ по умолчанию в config.xml при использовании --save
Также намного больший упор делается на использование NPM вместо собсвенного реестра плагинов.
Подробнее под катом.
Также будет немного о предстоящих релизах и вопросы по документации.
Думаю стоит начать с
npm -g install cordova
Поддержка флага --browserify
Теперь имеется полная поддержка --browserify и это официально. Все тесты пройдены и гипотетически это работает. Так как этот функционал долго был в основной ветке, скорее всего таки да, это таки работает.
Для разработчиков это означает что все плагины собираются в один файл, что значит меньше задержек с инициализацией, и приложение будет грузиться чуть быстрее. Также при сборке с помощью browserify кроме плагинов и общего кода для всех платформ, существуют часть функционала cordova.js которая зависит только от одной платформы, что позволяет разработчикам Cordova публиковать исправления которые затрагивают одну платформу быстрее и для получения обновления надо будет просто обновить платформу до более новой версии. Также это позволяет делать патч релизы, для тех кому не готов быстро идти в светлое будущее.
пример использования
cordova run android --browserify
Чтобы лучше понять что происходит можно сделать следующее
создайте тестовое приложение
cordova create browserifytest
cd browserifytest
cordova plugin add cordova-plugin-console
cordova plugin add cordova-plugin-device
После чего запустите приложение сперва как cordova run android
подключитесь к приложению через хром и посмотрите какие файлы отображаются в вкладке Source, после чего запустите приложение как cordova run android --browserify
и посмотрите разницу.
Поддержка Windows в plugman
Тут я был уверен что это было и раньше, но видимо нет. Теперь plugman поддерживает работу со всеми основными платформами, и это означает что вы можете иметь более кастомизированные версии Cordova приложений также на платформе Windows (чтобы бы не думали про нее). Это позволило plugman получить версию 1.0, так что впереди только улучшения.
Новая команда clean
Наверное это не требует детального описания, но теперь вы можете удалять весь компилируемый хлам для проекта. просто выполните
cordova clean
разумеется можно выполнять эту команду и индивидуально для каждой из установленных платформ.
cordova clean android
илиcordova clean ios
Использование ~ вместо ^ по умолчанию в config.xml при использовании --save
Теперь когда вы сохраняете платформы с использованием флага --save в config.xml записывается версия в виде ~4.1.0 что позволяет при восстановлении платформы получить версию у которой боляя поздняя патч версия. В силу того что в Cordova было найдено несколько уязвимостей за прошедший год, это изменение позволяет более быстро публиковать обновления безопасности, и не будет необходимости обновлять совместно с уязвимой платформой, и инструменты Cordova. Также при использовании автоматического построения, обновления безопасности будут автоматически применены, и вам не надо будет обновлять config.xml
Что нас ждет впереди
Впереди у нас несколько новых релизов платформ, самое интересное с моей точки зрения это будет обновление платформы Browser которое вернет возможность запускать веб-сервер с собранным приложением. Подождем и посмотрим, насколько это будет удобно. Также будет патч релиз для iOS и новый релиз платформы Windows. Я тесно не слежу пока за изменениями там, но если все три платформы выпустятся примерно в одно и тоже время попробую написать отдельно об этих релизах.
Документация и вопросы
С моей точки зрения документацию по Cordova находится в состоянии вроде как все есть, но иногда не найдешь то что надо. Я бы очень хотел улучшить это состояние, и определенные соображения в этом направлении есть, но хотелось бы узнать мнение людей которые работают с Cordova.
Меня интересует как русская, так и английская версии документации, если вы напишете свои пожелания в комментариях, то я буду стараться чтобы они появились в следующем релизе Cordova.
Немного ссылок:
Apache Cordova
Русская документация Apache Cordova
Английская документация Apache Cordova