Skip to content

WARNING_CEILING = 4 это показание, а не требование: четыре устаревших вызова в одном файле #1272

Description

@gHashTag

Найдено вторым вопросом к порогам: не «умеет ли падать», а «почему он зелен именно на этом числе».

WARNING_CEILING := 4 равен ровно числу предупреждений '+' was deprecated in macOS 26.0 в BR-OUTPUT/RichTextRenderer.swift, строки 73, 75, 77, 79. То есть потолок выставлен по замеру, а требование — ноль.

Это та же форма, что месяцами стояла в XCTEST_ERROR_CEILING = 2, где двойка была числом ошибок, которые давал сломанный список исходников. Там она обнаружилась только когда список починили: настоящее число оказалось 23, а после починки тестов — 0, и потолок стал требованием.

Почему не опущено сегодня

Правка не однострочная. Четыре вызова склеивают Text с разным начертанием — жирный, курсив, моноширинный:

segments.reduce(Text("")) { acc, seg in
    switch seg {
    case .plain(let s):  return acc + Text(s)
    case .bold(let s):   return acc + Text(s).fontWeight(.bold)
    case .italic(let s): return acc + Text(s).italic()
    case .code(let s):   return acc + Text(s).font(.system(.body, design: .monospaced))
    }
}

Современная замена — переписать styledText на AttributedString, а не подставить другую операцию. Это меняет отрисовку, а отрисовка не проверяется по журналу сборки: правило репозитория запрещает называть правку интерфейса невидимой, если на неё нельзя посмотреть.

Что нужно

  • Переписать styledText на AttributedString, сохранив три начертания.
  • Посмотреть глазами на богатый текст в чате: жирное, курсив, код — до и после.
  • Опустить WARNING_CEILING до нуля, и тогда число станет требованием.

До тех пор комментарий у потолка говорит прямо, что четвёрка — показание с названным долгом.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions