Сегодня команда Atom опубликовала roadmap. Это пока не опубликовано в блоге, но уже объявлено на discuss, добавлено в FAQ и расписано в issues, так что новость вполне официальная. На скрине список на стабилизацию API.
UPD. Из интересного:
- У команды разработчиков Atom нет жестких сроков
- В текущем роадмапе отсутствует поддержка отличных от UTF-8 кодировок (линк на коммент)
Предыстория.
Неделю назад в одном из топиков на discuss.atom.io была высказана идея о публикации roadmap Atom`а:
Some things I can think of off the top of my head to increase transparency:
- post the roadmap with general guidelines on here, or on the atom/atom
- open PRs super early in the process with an explanation of what we're doing
Мой текст представляет собой вольный перевод заметки и объединения контента из ссылок оригинала в более наглядное целое.
Собственно перевод, с моими вставками
Мы хотим донести до каждого над чем мы работаем и сосредоточены. Перед нами стоит две задачи: зафиксировать API и 1.0
Фиксация API (API Freeze)
Цель фиксации API, в том чтобы привести наши публично задокументированные API, в состояние c которым мы готовы работать до следующей версии. Это позволит нам улучшить API, основанное на использовании готовых шаблонов; конкретизировать API которые выросли органически, и в целом капитально его почистив заложить прочную основу.
Задачи
Плюсом помечены реализованные задачи.
+ Поменять редактор на поддерживающий react.
+ Сконвертировать всю документацию в atomdoc.
+ Изменить API документации.
+ Разделить API на основное и расширенное.
+ Преобразовать все события в события-методы.
+ Добавить view provider API.
+ Пройтись по API и сделать его более последовательным / симметричным.
(не уверен в правильности — оригинал «Make a pass through the API and make APIs more consistent / symmetrical»)
+ Новая, менее запутанная система команд.
— Обновление API конфигурации.
+ Повсеместное использование одноразовости. (Use disposables everywhere)
— Обновление API проектов для работы с множеством проектов. (Сейчас один проект может работать только с одним репозиторием в одном каталоге)
— Преобразовать внутренне представление в кастомные HTML Элементы. В API присутствует т.н. Shadow DOM которое они планируют унифицировать.
— API панели аналогично API провайдера. Это два недавно добавленных и анонсированных API для рабочего пространства Atom`а.
— Экспорт только единичного ядра классов. (Проблема в том что разные пакеты могут ссылаться на несколько одинаковых пакетов, каждый из которых загружается в память, со всеми вытекающими)
— Удалить устаревшее из пакетов.(Remove deprecations from packages)
— Дать пользователю использовать устаревшее.(Enable deprecations for users)
Здесь и далее, пункты помеченные (текст на английском) не прокоментированны разработчиками, поэтому дополнительно привожу оригинальное название. В последних двух, вероятно подразумевается удаление устаревших параметров в пакетах.
Atom 1.0
Когда мы зафиксируем API, мы будем стремительно приближаться к версии 1.0. Это будет включать в себя множество важных вещей. На текущий момент опубликованы следующие задачи:
- Features
- Проект в нескольких директориях
- Система конфигурации для каждого проекта
- Конфигурация привязанная к области (Scoped config settings)
- Отключение посимвольной отмены
- Обновление стандартных тем
- Windows installer/updater
- Пользовательский опыт в исключениях (Exception user experience)
- Обновление интерфейса настроек
- Работа с отступами и переносами (задача аж с ноября 2013, которая заново была открыта в июле 2014)
- Обновление tree-view. Реализация аналога «smart tabs» из sublime
- Производительность
- Загрузка
- Поиск и замена
- Переключение между вкладками
- Autocomplete
- Набор и передвижения курсора. (Typing and cursor movement)
- Поддержка файлов с экстремально длинными строками
- Поддержка файлов большого размера (всё ещё только 2 мегабайта)
- Tree view (видимо не устраивает его производительность)
- Bugs (пока пусто)
- Docs
- Обновление и уточнение документации
- API
- Избавиться от устаревших API
- Сервисы (внутри пакетная коммуникация)
- Обновление компонентов для просмотра
Ни одна из перечисленных задач не решена, поэтому оформил их списком.
Отслеживание наших действий/состояния
Мы будем закреплять за модулями с которыми работаем систему стикеров.
Когда мы будем готовы работать над чем то, мы добавим стикер on-deck
github.com/atom/atom/labels/on-deck
То над чем мы работаем помечено стикером in-progress:
github.com/atom/atom/labels/in-progress
Когда модуль на пути к реализации он помечается стикером shipping:
github.com/atom/atom/labels/shipping
(сейчас только «уплывшие»)
Кроме того Вы можете следовать за нами nathansobo, kevinsawicki, thedaniel and benogle на github и наблюдать за нашими действиями.
Надеемся — это даст Вам понимание того где мы и куда двигаемся.
Источники
- Оригинальная версия трэка по фиксации API github.com/atom/atom/issues/3041
- Открытые issues по фиксации API github.com/atom/atom/labels/api-freeze-roadmap
- Оригинальная версия с roadmap github.com/atom/atom/issues/3684
- Открытые issues по roadmap github.com/atom/atom/labels/1.0-roadmap
- Оригинал поста discuss.atom.io/t/atom-roadmap-to-1-0/12379
Про Atom
- Сайт atom.io
- Репозиторий github.com/atom/atom
- Установка Atom на поддерживаемые ОС habrahabr.ru/post/205994
Автор: login4all