Как игнорировать предупреждения в сторонних пакетах при сборке проекта D с DUB
Я очень плохо знаком с D и DUB. Я пытаюсь создать несколько примеров, в которых используются сторонние пакеты, управляемые DUB.
Проблема в том, что один пакет генерирует несколько предупреждений. И похоже, что по умолчанию предупреждения рассматриваются как ошибки. Таким образом, когда сторонняя библиотека генерирует предупреждения, я не могу построить свой собственный пример.
В качестве временного решения я просто изменил код пакета в реестре DUB, чтобы исправить предупреждение. Но я ИМХО это не очень "чистое" решение. Я понимаю, что могу вручную клонировать код пакета, исправить его код (возможно, даже отправить запрос исправления или позднее) и использовать локальный каталог пакета. Но для небольших простых тестов это (ИМХО) слишком много накладных расходов.
Итак, вопрос: как я могу игнорировать предупреждения компилятора при сборке сторонних пакетов, которые представляют собой зависимости, управляемые dub?
Заранее спасибо.
Для справки:
- ОС: Win 7
- DMD версия: DMD32 D Compiler v2.068.0
- Версия DUB: 0.9.23, построена 6 апреля 2015 г.
2 ответа
Единственный (и лучший способ) - связаться с автором (-ами) стороннего пакета (-ов). Не имеет смысла молчать предупреждения. В D предупреждения означают, что они не будут компилироваться в одном из будущих выпусков.
К сожалению, нет способа пометить пакет как устаревший. Но было бы неплохо иметь эту функцию. Поэтому я советую связаться с авторами устаревших пакетов, чтобы они могли обновить свой код (или нет) и сделать запрос на форуме или на трекере менеджера пакетов dub, чтобы добавить какой-то способ устаревания пакета.
аналогично комментарию от user1435461 , вы можете использовать раздел требований к сборке, как описано здесь: https://dub.pm/package-format-json.html#build-requirements
Вместо того, чтобы заставить их замолчать, вы можете указать allowWarnings , что намного лучше.
"buildRequirements": [
"allowWarnings"
],