Krita в 2022 и 2023 годах
Это наш, очень запоздалый, ежегодный обзор прошедшего года и взгляд вперёд на только что начавшийся год. Если вам это неинтересно, смело пропускайте!

Как и в 2021 и 2020 годах, никто из команды Krita на самом деле не умер от продолжающейся пандемии. Это кажется немного чудесным, но так оно и есть. Год, впрочем, был довольно ужасным: сопровождающая Krita подхватила длительный COVID (это я, Halla…) и была слишком больна, чтобы хоть что-то делать четыре дня из семи, — а также разные другие потрясения, о которых не рассказываем, потому что это было бы небезопасно или слишком личным, чтобы об этом говорить; год выдался действительно тяжёлым.
Годы до 2022-го в основном прошли в попытках — порой отчаянных — успевать за потоком поступающих сообщений об ошибках. Надо сказать, что многие сообщения об ошибках по сути не требуют никаких действий. И это не упрёк тому, кто отправил сообщение, пройдя через все сложности регистрации и описав свою проблему. А это, право, достойные восхищения усилия. Но слишком часто проблемы связаны с поддержкой планшетов в операционной системе, драйверами дисплея… А то и просто с недоразумениями. И с просьбами о поддержке пользователей. Но сейчас открытых сообщений об ошибках больше, чем год назад.

Итак, в этом году решено было пойти другим путём. Хотелось заранее определить, над чем мы сами хотим работать, а затем обсудить, как это сделать, и приступить к работе, вместо того чтобы просто реагировать на сообщения об ошибках, пожелания и запросы на новые возможности.
Итак, в начале 2022 года, как только позволила отмена карантинных ограничений, два разработчика Krita, Halla и Wolthera, собрались вместе в Девентере, чтобы проработать эту идею. Конечно, ещё до вторжения в Украину и всех проблем, которые это вызвало, собрать полный Krita Developers' Sprint не удалось. Поэтому мероприятие было ограниченным.
Мы сели вдвоём и обсудили, кто является главным коммерческим конкурентом Krita. Ну, конечно же, Clip Studio. Photoshop на самом деле не продвигается вперёд в плане поддержки рисования, а Corel Painter — не то приложение, которое мы взяли бы за образец: мы хотим создать наиболее эффективное приложение для создания новых изображений. Превращение фотографий во что-то живописное — не наша цель.
Результатом стал документ, в котором была предпринята попытка определить наиболее важные вещи, которых не хватает, или которые отсутствуют в Krita. Вот что получилось:
- Возможности текстовых объектов
- Отдельные изображения против книг или проектов
- Расширенная главная страница
- Интеграция с облаком
- Мобильный интерфейс
- Трассировка по трёхмерным моделям
- Гибкая компоновка кадров комикса
- Векторные кисти
- Улучшения управления слоями
- Управление ресурсами проекта
- Новые инструменты заливки
Затем состоялась виртуальная встреча со всей командой спонсируемых разработчиков, и участники могли выбрать то, что интересно им:
- Dmitry планировал заняться разделением логики в редакторах кистей, чтобы можно было создавать новые интерфейсы редактора кистей, не нарушая работу кистевых модулей. Сейчас это сделано.
- Текстовый объект. Чётко разграничивая текстовый объект и инструмент «Текст», Wolthera потратила огромное количество усилий на улучшение текстового объекта. (ПРИМЕЧАНИЕ: это означает, что сам инструмент «Текст» не обновлён, поэтому сейчас потребуется вводить исходный код SVG.) Теперь текстовый объект поддерживает SVG2 и CSS, включая перенос слов и многое другое. На этом изображении показан результат её работы:

Это тоже в основном сделано и объединено.
- Agata работает над улучшением удобства работы со вспомогательными средствами Krita и намерена заняться гибкой компоновкой кадров комикса. Первая задача уже на рассмотрении (1, 2), вторую ещё предстоит начать с самого проектирования.
- Sharaf работает над переносом страницы приветствия на QML, чтобы сделать её более гибкой и полезной. Работа идёт медленно, так как ему также нужно поддерживать Krita для Android и ChromeOS, а частые изменения API усложняют задачу. Ещё одна сложность — фреймворк KDE QML Kirigami, который постоянно меняется и не так стабилен, как ожидалось.
- Emmet (а до декабря 2022 года — Eoin) занимаются переработкой поддержки звука в системе анимации. Технически это готово, но есть проблемы со сборкой вспомогательных библиотек на всех платформах.
А что касается ошибок, то, конечно, мы исправили более тысячи сообщений.
Кроме того, вышло несколько выпусков:
- 5.0.6: 27.04.2022, объявление о выпуске
- 5.0.8: 25.05.2022 — выпуск только с исходным кодом, в котором исправлена регрессия сборки для дистрибутивов Linux с Qt > 5.12.
- 5.1.0: 18.08.2022, объявление о выпуске, примечания к выпуску
- 5.1.1: 13.09.2022, объявление о выпуске
- 5.1.3: 07.11.2022, объявление о выпуске (версия 5.1.2 не выпускалась)
- 5.1.4: 14.12.2022, объявление о выпуске
Хотя Krita так и не удалось добавить в магазин macOS (НЕ iPadOS) — «песочница» для приложений из магазина в macOS оказалась совершенно непреодолимым препятствием, и способ заставить это работать так и не был найден. Пока. Кстати, о магазинах: значительного падения продаж в Steam или Windows Store не наблюдалось — хотя оно было заметным. Google Play и Epic принесли лишь копейки.
Учитывая огромное давление, под которым находятся все, неудивительно, что фонд развития Krita, а также прежние фонды разработки и разовые пожертвования после загрузки сократились. Так и произошло, но есть и положительный момент: появился первый корпоративный спонсор: Intel:


Но если продолжать в том же духе, что ж, потребуется больше денег — без этого не обойтись. Этот год, 2023-й, станет годом полной неопределённости.
Что касается разработчиков, получающих спонсорскую поддержку, почти вся команда по-прежнему вместе: Sharaf, Dmitry, Halla, Wolthera, Tiar, Emmet, Ivan, Amy. Eoin покинул команду в конце года, чтобы начать работу над Godot — ещё одним очень интересным проектом свободного программного обеспечения.
Но нас преследовали регрессии, которые не мог остановить даже наш набор модульных тестов перед выпуском. Впрочем, это своего рода цикличность. Выпуски Krita, похоже, сменяют друг друга: стабильный, стабильный, прискорбный, стабильный — в ответ на что-то, что-то такое, причину чего пока не выяснили. Именно поэтому, конечно же, выпускаются бета-версии! Тестируйте их!
В целом 2022 год был, как я уже говорила, непростым. Учитывая ограничения, был достигнут потрясающий прогресс. Но этот год испытывал на прочность как сообщество разработчиков, так и более широкое сообщество Krita — не только ту его часть, которая действительно общается с командой разработчиков, но и сообщества вокруг, такие как Discord или Reddit.
Люди часто злились на то, что воспринимали как отсутствие отклика со стороны «разработчиков». Хотя krita-artists.org — большой успех и место, где люди действительно помогают друг другу, верно и то, что разработчики Krita не в силах прочитать все предложения и запросы на новые возможности и просмотреть зачастую удивительно подробные макеты. Угнаться за всем просто невозможно!
Итак, чтобы участвовать в развитии и улучшении Krita, нужно связаться с разработчиками Krita напрямую. Либо в IRC (или Matrix), либо через запрос на слияние на invent.kde.org, либо через список рассылки. И даже тогда помните: приходится отбиваться от потока сообщений об ошибках, одновременно пытаясь реализовать возможности и улучшения, уже признанные первоочередными!
Что ожидается в 2023 году?
Вероятно, с большим опозданием, но мы выпустим Krita 5.2.0. Выпуск задержится, потому что после работы в течение 2022 года многие участники команды истощены и нуждаются в более длительном отдыхе, чем обычно. Проблемы, которые мучили нас в 2022 году, никуда не исчезли, а некоторым из нас пришлось переехать в новые страны — вынужденно или ради учёбы. А у меня хватало сил только на управление проектом, и до написания кода почти не доходило!
Но в Krita 5.2.0 войдёт вся или почти вся работа, перечисленная выше. Следить за тем, что войдёт в Krita 5.2.0, можно с помощью функции этапов в GitLab KDE, пока готовятся примечания к выпуску: этапы. После 5.2.0 начнётся работа над выпусками с исправлениями ошибок — и, конечно, над остальными пунктами из списка приоритетов, к которым ещё не приступали!
Если хотите, чтобы это произошло, поддержите Krita — разовым пожертвованием, подпиской на фонд развития или приобретением Krita в одном из поддерживаемых магазинов приложений!