diff --git a/CHANGELOG.md b/CHANGELOG.md index fd3dd492a..203103eeb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # Changelog +## 1.1.0 + +### Major changes + +- `jquery__config` uses jQuery 2.x by default for modern browsers ([#319](https://github.com/bem/bem-core/issues/319)). +- Add ability to use any BEMJSON as value of attributes in BEMHTML templates ([#290](https://github.com/bem/bem-core/issues/290)). +- Fix dependencies in `i-bem__collection` ([#292](https://github.com/bem/bem-core/issues/292)). +- Remove `page` block's touch styles ([#306](https://github.com/bem/bem-core/issues/306)). +- Fix `page` BEMHTML wrapping in production mode ([#309](https://github.com/bem/bem-core/issues/309)). +- Fix possible JavaScript error in script injection in IE<9 in `next-tick` ([#324](https://github.com/bem/bem-core/issues/324)). +- Fix `FastClick` initialisation in `jquery__event_type_pointerclick` of `touch.blocks` ([#332](https://github.com/bem/bem-core/issues/332)). +- Fix `node.js` tech bug on Windows systems ([#274](https://github.com/bem/bem-core/issues/274)). +- Fix `i-bem__dom_elem-instances` bug with `onElemSetMod` ([#340](https://github.com/bem/bem-core/issues/340)). +- Use bemhtml from [bem-xjst](https://github.com/bem/bem-xjst) ([#329](https://github.com/bem/bem-core/issues/329)). + +### Other changes + +- [ym](https://github.com/ymaps/modules) was updated to 0.0.12 ([#326](https://github.com/bem/bem-core/issues/326)). +- Do not flood `console` with messages if `i-bem__i18n` is not in debug mode ([#285](https://github.com/bem/bem-core/issues/285)). +- Fix jsdoc for `dropElemCache()` method of `i-bem__dom` module ([#296](https://github.com/bem/bem-core/issues/296)). +- Development infrastructure was updated to + [bem-pr@v0.5.x](https://github.com/narqo/bem-pr/blob/0.5.3/HISTORY.md) ([#323](https://github.com/bem/bem-core/issues/323)). +- Russian documentation for `i-bem.js` was updated. +- [List of supported browsers](https://github.com/bem/bem-core/blob/v1/README.md#supported-browsers) + was specified in project's README. + ## 1.0.0 ### Major changes @@ -56,7 +82,7 @@ - `trigger` method from `i-bem` block is **deprecated** in flavor of `emit` method. - `onFirst` method from `i-bem` block is **deprecated** in flavor of `once` method. - **Deprecated** field `e.block` that provided block-target of BEM-events was removed. Use `e.target` field instead. -- Field `e.domElem` that provided DOM-element of block in DOM-events was removed. Use `$(e.currentTarget)` (provided by jQuery). +- Field `e.data.domElem` that provided DOM-element of block in DOM-events was removed. Use `$(e.currentTarget)` (provided by jQuery). - Introduces parameter for `findElem` method that allows to search elements of particular block instance (in case of nested blocks with same name). - Introduces possibility to point particular function in `unbindFrom*` methods. diff --git a/CHANGELOG.ru.md b/CHANGELOG.ru.md index 0d13e043f..54f5e87a9 100644 --- a/CHANGELOG.ru.md +++ b/CHANGELOG.ru.md @@ -1,5 +1,33 @@ # История изменений +## 1.1.0 + +### Основные изменения + +- Для современных браузеров, `jquery__config` подключает jQuery 2.x ([#319](https://github.com/bem/bem-core/issues/319)). +- Добавлена возможность использовать произвольный BEMJSON в качестве значения атрибутов в BEMHTML ([#290](https://github.com/bem/bem-core/issues/290)). +- Исправлены зависимости в `i-bem__collection` ([#292](https://github.com/bem/bem-core/issues/292)). +- Удалены CSS-стили блока `page` из уровня `touch.blocks` ([#306](https://github.com/bem/bem-core/issues/306)). +- Исправена ошибка в BEMHTML-шаблоне блока `page`, приводящая к зацикливанию шаблонизатора + в production-режиме ([#309](https://github.com/bem/bem-core/issues/309)). +- Исправленая возможная ошибка в `next-tick`, возникающая при вставки скрипта в DOM в IE<9 ([#324](https://github.com/bem/bem-core/issues/324)). +- Исправлена ошибка в инициализации плагина `FastClick` в модуле `jquery__event_type_pointerclick` + на уровне `touch.blocks` ([#332](https://github.com/bem/bem-core/issues/332)). +- Исправлена ошибка в технологии `node.js` в Windows ([#274](https://github.com/bem/bem-core/issues/274)). +- Исправлена ошибка в `onElemSetMod` в `i-bem__dom_elem-instances` ([#340](https://github.com/bem/bem-core/issues/340)). +- В технологии `bemhtml` используется [bem-xjst](https://github.com/bem/bem-xjst) ([#329](https://github.com/bem/bem-core/issues/329)). + +### Остальные изменения + +- Модуль [ym](https://github.com/ymaps/modules) обновлен до версии 0.0.12 ([#326](https://github.com/bem/bem-core/issues/326)). +- В ядре локализации `i-bem__i18n` отключен вывод сообщений о неизвестных ключах, если не включен + debug-режим ([#285](https://github.com/bem/bem-core/issues/285)). +- Инфраструктура сборки тестов и примеров переведена + на [bem-pr@v0.5.x](https://github.com/narqo/bem-pr/blob/0.5.3/HISTORY.md) ([#323](https://github.com/bem/bem-core/issues/323)). +- Исправлен jsdoc для метода `dropElemCache()` в `i-bem__dom` ([#296](https://github.com/bem/bem-core/issues/296)). +- Доработана русская документация для блока `i-bem.js`. +- В README проекта добавлен [список поддерживаемых браузеров](https://github.com/bem/bem-core/blob/v1/README.ru.md#%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5-%D0%B1%D1%80%D0%B0%D1%83%D0%B7%D0%B5%D1%80%D1%8B). + ## 1.0.0 ### Крупные изменения @@ -51,7 +79,7 @@ - Метод `trigger` в `i-bem` теперь **deprecated**, нужно использовать `emit`. - Метод `onFirst` в `i-bem` теперь **deprecated**, нужно использовать `once`. - Удалено **deprecated** поле `e.block`, представляющее блок-источник события для BEM-событий. Вместо него следует использовать поле `e.target`. -- Для доступа к DOM-элементу блока в обработчике DOM-событий теперь нужно использовать поле `currentTarget`, предоставляемое jQuery. Вместо `e.domElem`нужно писать `$(e.currentTarget)`. +- Для доступа к DOM-элементу блока в обработчике DOM-событий теперь нужно использовать поле `currentTarget`, предоставляемое jQuery. Вместо `e.data.domElem`нужно писать `$(e.currentTarget)`. - В методе `findElem` добавлен параметр, позволяющий находить элемента блока с учетом вложенных блоков. - Добавлена возможность указывать конкретную функцию для отписки от событий в методах `unbindFrom*`. - Добавлен модуль `objects` для работы с JS-объектами (содержит методы `extend`, `isEmpty`, `each`). diff --git a/README.md b/README.md index e0e20dd4e..cebbccc7d 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ # bem-core Library [![Build Status](https://travis-ci.org/bem/bem-core.png)](https://travis-ci.org/bem/bem-core) -This README is also availabe [in -Russian](http://ru.bem.info/libs/bem-core/). +This README is also available [in Russian](http://ru.bem.info/libs/bem-core/). ## What is this? @@ -64,7 +63,7 @@ If you used BEM before, check the [migration instructions](http://bem.info/libs/ 1. Get the needed version code (e.g., `v1`): ``` -$ git clone -b v1 git@github.com:bem/bem-core.git +$ git clone -b v1 git://github.com/bem/bem-core.git $ cd bem-core ``` @@ -72,11 +71,11 @@ $ cd bem-core ``` $ npm install ``` -You need -`export PATH=./node_modules/.bin:$PATH` -or an alternative way to run locally-installed bem-tools. -3. Install all the necessary libraries with bem-tools: +You need `export PATH=./node_modules/.bin:$PATH` +or an alternative way to run locally-installed [bem-tools](https://github.com/bem/bem-tools). + +3. Install all the necessary libraries: ``` $ bem make libs ``` @@ -111,24 +110,29 @@ perfectly. ### Modular testing -A default test bundle for `ecma_array`: `bem make common.sets/ecma__array.tests/default` +A default test bundle for `ecma_array`: +``` +$ bem make desktop.specs/ecma__array +``` + You can see the results of the tests in the terminal after the building process finishes. -You can also watch them in a browser loading `common.sets/ecma__array.tests/default/default.html`. +You can also watch them in a browser loading `desktop.specs/ecma__array/spec-js+browser-js+bemhtml/spec-js+browser-js+bemhtml.html`. Run tests for other BEM entities in the same way. This will work for those which -are equiped with `.test.js` file. +are equipped with `.spec.js` file. Test are built with a [bem-pr](https://github.com/narqo/bem-pr) library. Check the -[details](https://github.com/narqo/bem-pr/blob/master/docs/tests.ru.md] -about testing infrastructure of the [bem-pr](https://github.com/narqo/bem-pr) -library. +[details](https://github.com/narqo/bem-pr/blob/master/docs/tests.ru.md) +about testing infrastructure of the bem-pr. ## Supported browsers -Our browser support policy is based on statistics we get from Yandex services. +Our browser support policy is based on statistics we get from [Yandex](http://company.yandex.com) services. -Browsers with more then 2% users get full compliant support, more then 0.5% — partially compliant (which means that data is accessible but not necessary 100% functional). New features testing is not provided by us for  browsers with less then 0.5% users. +Browsers with more then 2% users get full compliant support, more then 0.5% — partially compliant +(which means that data is accessible but not necessary 100% functional). New features testing +is not provided by us for  browsers with less then 0.5% users. ### Desktop #### Fully compliant diff --git a/README.ru.md b/README.ru.md index 714165513..f3a7d5b2b 100644 --- a/README.ru.md +++ b/README.ru.md @@ -1,16 +1,16 @@ # bem-core Library [![Build Status](https://travis-ci.org/bem/bem-core.png)](https://travis-ci.org/bem/bem-core) -This README is also availabe [in -English](http://bem.info/libs/bem-core/). +This README is also available [in English](http://bem.info/libs/bem-core/). ## Что это? Базовая библиотека блоков для разработки веб-интерфейсов. -Содержит только необходимый минимум для разработки клиентского js и html-шаблонов. +Содержит только необходимый минимум для разработки клиентского JS и HTML-шаблонов. ## Использование -Наиболее простым способом начать проект с использованием `bem-core` является [project-stub](https://github.com/bem/project-stub). +Наиболее простым способом начать проект с использованием `bem-core` является +[project-stub](https://github.com/bem/project-stub). Вы также можете добавить библиотеку к себе в проект любым известным вам способом. @@ -62,7 +62,7 @@ English](http://bem.info/libs/bem-core/). 1. Получаем исходники нужной версии (например, `v1`): ``` -$ git clone -b v1 git@github.com:bem/bem-core.git +$ git clone -b v1 git://github.com/bem/bem-core.git $ cd bem-core ``` @@ -70,7 +70,8 @@ $ cd bem-core ``` $ npm install ``` -Для последующего запуска локально установленных bem-tools нам потребуется `export PATH=./node_modules/.bin:$PATH` или любой альтернативный способ. +Для последующего запуска локально установленных [bem-tools](https://github.com/bem/bem-tools) нам потребуется +`export PATH=./node_modules/.bin:$PATH` или любой альтернативный способ. 3. С помощью bem-tools устанавливаем все зависимые библиотеки: ``` @@ -100,18 +101,22 @@ $ bem server ### Модульное тестирование -Сборка дефолтного тестового бандла для `ecma__array`: `bem make common.sets/ecma__array.tests/default` +Сборка дефолтного тестового бандла для `ecma__array`: `bem make desktop.specs/ecma__array` После сборки тестового бандла вы увидите результаты выполнения тестов в консоли. -Их также можно посмотреть в браузере, открыв `common.sets/ecma__array.tests/default/default.html`. +Их также можно посмотреть в браузере, открыв `desktop.specs/ecma__array/spec-js+browser-js+bemhtml/spec-js+browser-js+bemhtml.html`. -По аналогии можно запустить тесты для других БЭМ-сущностей, имеющих реализацию в технологии `test.js`. +По аналогии можно запустить тесты для других БЭМ-сущностей, имеющих реализацию в технологии `spec.js`. -Для сборки и запуска тестов используется библиотека [bem-pr](https://github.com/narqo/bem-pr). См. [подробную информацию](https://github.com/narqo/bem-pr/blob/master/docs/tests.ru.md) про инфраструктуру тестирования [bem-pr](https://github.com/narqo/bem-pr). +Для сборки и запуска тестов используется библиотека [bem-pr](https://github.com/narqo/bem-pr). +См. [подробную информацию](https://github.com/narqo/bem-pr/blob/master/docs/tests.ru.md) про инфраструктуру +тестирования в bem-pr. ## Поддерживаемые браузеры -Мы поддерживаем браузеры на основе статистики, получаемой на сервисах Яндекса. +Мы поддерживаем браузеры на основе статистики, получаемой на сервисах [Яндекса](http://company.yandex.ru). -Браузеры с долей более 2% пользователей попадают в полную совместимость, с более 0.5% — в частичную, что означает, что данные будут доступны, но возможна деградация. В браузерах с долей менее 0.5% мы прекращаем тестирование. +Браузеры с долей более 2% пользователей попадают в полную совместимость, с более 0.5% — в частичную, +что означает, что данные будут доступны, но возможна деградация. В браузерах с долей менее 0.5% мы прекращаем +тестирование. ### Десктопы #### Полная совместимость