Skip to content
This repository has been archived by the owner on Jan 13, 2018. It is now read-only.

deps: possibility to declare dependence without explicit including item #463

Merged
merged 5 commits into from
Oct 16, 2013

Conversation

veged
Copy link
Contributor

@veged veged commented Sep 18, 2013

close #459

@scf2k
Copy link
Contributor

scf2k commented Sep 18, 2013

@veged в v2 это не актуально?

@veged
Copy link
Contributor Author

veged commented Sep 18, 2013

@scf2k актуально, щас добавим

@arikon
Copy link
Contributor

arikon commented Sep 19, 2013

@veged @dfilatov Объясните, пожалуйста, суть этих изменений. Из исходного таска я её не понял.

] } }
));

// TODO: https://github.com/bem/bem-tools/issues/401
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#401 уже закрыли, нужно раскомметировать?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@arikon вроде пока не закрыли

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ага, закроем завтра

@arikon
Copy link
Contributor

arikon commented Sep 25, 2013

@dfilatov

Это позволяет указывать зависимости между сущностями, но без подключения самих сущностей. Например, блок B не зависит от кода блока A напрямую, но если вдруг какой-то другой блок будет явно зависеть от A, то его код (код блока A) должен подключаться раньше подключения кода B. Для этого в B пишется такая зависимость (с ключом include: false), которая влияет только на порядок, без явного подключения самой сущности.

@dfilatov
Copy link
Contributor

@arikon поправили с учетом твоих замечаний

@arikon
Copy link
Contributor

arikon commented Sep 25, 2013

@dfilatov Сделайте то же самое в v1 версии, пожалуйста

@veged
Copy link
Contributor Author

veged commented Sep 26, 2013

перенёс каменты в v1 версию технологий и в пуллреквест про v1 версию bem-tools #464

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

/cc @SevInf @diunko

@ghost ghost assigned arikon Sep 26, 2013
@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

LGTM

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

@veged @dfilatov Здесь не хватает коммита про актуализацию эталонных результатов сборки

@veged
Copy link
Contributor Author

veged commented Sep 26, 2013

@arikon тесты жеж проходят... я считал, что в этой ветке просто нет того теста

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

Окей

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

@veged @dfilatov Покажите пример блока, в котором используется include: false? Нам для понимания, в каких случаях рекомендуется это использовать.

@veged
Copy link
Contributor Author

veged commented Sep 26, 2013

представьте, что есть блок input и у него есть 1) разные темы input_theme_{dark,light} и 2) опциональный элемент input__label

в стилях для темы написано переопределение базовых стилей для лейбла, поэтому input_theme_{dark,light} должен идти после input__label -- т.е. нужен mustDeps: input_theme_{dark,light} mustDeps input__label, но если так написать сейчас, то всегда с темой будет подцепляться input__label (т.к. у нас понятия "это должно идти перед этим" и "это должно попадать в финальную сборку вместе с этим" не разделены)

чтобы можно было указать зависимость по порядку следования в сборке, но при этом не требовать обязательного подключения опционального элемента мы сделали include: false -- input_theme_{dark,light} mustDeps input__label include: false -- в этом случае мы запомним факт про зависимость, но не будем подключать input__label до тех пор, пока кто-то его не попросит без include: false

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

@veged Спасибо за подробное описание!

@tadatuta Вова, это описание нужно унести в статью про deps.js на bem.info, когда вольём.

@arikon
Copy link
Contributor

arikon commented Sep 26, 2013

@veged К сожалению, Travis лежит. Надеюсь к завтра оклемается и мы сможем узнать финальный результат сборки.

@tadatuta
Copy link
Contributor

Чарльз писал, что mustDeps и shouldDeps непонятны для англоговорящих (да и для русскоговорящих, кажется, тоже).

а mustDeps с include: false — это дополнительный взрыв мозга.

вопрос/предложение: может быть, пока не вышли bem-tools 1.0.0 и bem-core официально не зарелизился, добавим понятные алиасы, как обсуждали в переписке, и пореплейсим везде?

@veged
Copy link
Contributor Author

veged commented Sep 27, 2013

@tadatuta мне кажется, что это всё-таки не связанные вещи -- этот пуллреквест опирается на текущую ситуацию, про переименование можно отдельно обсуждать

include: false не особо что-то усложняет и не подразумевается к масштабному использованию

@tadatuta
Copy link
Contributor

@veged согласен, вопрос был не в контексте конкретного пулл-реквеста.

но то, что mustDeps (читается примерно как "должен зависит") при использовании вместе с include: false на самом деле говорит, что не так уж оно и must, имхо, запутывает окончательно.

интуитивно это воспринимается как:

зависитОбязательно: [
    {
        отСущности: 'такой-то',
        похуй: 'вальсируем' // но если вдруг, то порядок все-таки нужно поменять
    }
]

@qfox
Copy link

qfox commented Sep 28, 2013

похуй: 'вальсируем'

Ох уж этот великий и могучий.

arikon added a commit that referenced this pull request Oct 16, 2013
deps: possibility to declare dependence without explicit including item
@arikon arikon merged commit be7ff3f into support/0.6.x Oct 16, 2013
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants