Новости и события » Hi-Tech » Haiku: настоящее и будущее

Haiku: настоящее и будущее

Haiku: настоящее и будущее

И все-таки хотелось бы знать ответы на несколько вопросов: зачем в наше время нужна еще одна операционная система (локальный ответ приведу, с глобальным сложнее), и смогут ли разработчики этой системы преодолеть боязнь релизов?

Операционной системой, официально застрявшей на отметке R1/Alpha 4.1, пользуется несколько десятков тысяч человек. Точное их число неизвестно. Может быть, их меньше.

У подавляющего большинства из них уже давно не та система, которая появилась на свет в ноябре 2012. Любовь творит чудеса и заставляет устанавливать на свой компьютер то, что называется nightly builds. Неофициальные релизы. С исправлениями, добавлениями, с чем-то новым.

Локальный ответ на вопрос "кому нужна эта Haiku?" - тем, кто пользуется этой системой, несмотря ни на что.

Глобально ответить на этот вопрос я не могу. С одной стороны - в системе точно есть что-то уникально притягательное. Разговоры про "генофонд операционных систем" мне, если честно, не совсем понятны.

А вот насчет боязни релизов...

Это девятая (последняя) часть серии про Haiku. Предыдущие части:

  • Первая: Haiku (OpenBeOS);
  • Вторая: Кому нужна эта... Haiku?;
  • Третья: Haiku R1/Alpha1.
  • Четвертая: Haiku: Возвращение BeOS.
  • Пятая: Web+, WebKit и Qt4.
  • Шестая: WebPositive, самый позитивный веб-браузер в мире.
  • Седьмая: Haiku - скромность и недосказанность.
  • Восьмая: Haiku: новейшая история.

Релизофобия

В предыдущей части описана история выхода самого последнего, на настоящий момент, официального релиза Haiku. На ранней стадии разработки четвертой альфа-версии, в баг-треккере был зарегистрирован ticket с номером 8684. Но автор этого тикета не догадался указать в описании проблемы точную конфигурацию машины, на которой проявлялся баг.

Убедившись, что баг не воспроизводится, на него перестали обращать внимание. Иногда компьютер (сложное устройство, вообще-то) может, из-за чего-то случившегося с ним чуть раньше, прийти в "дурное настроение".

И, скорее всего, баг "закрыли" с формулировкой "не воспроизводится".

На всякий случай уточню: в этом тексте "баг", "тикет" и "ticket" - синонимы.

Возможных конфигураций слишком много, чтобы тестировщики могли проверить код на всех из них. Можно ли с этим бороться? Да. Apple нашла очень удобное для себя решение: не умножать сущности сверх необходимого. Пользователи ворчали, но это приемлемо.

12-13 ноября, тот же самый баг был зарегистрирован под номерами 9139 и 9153. Вскоре выяснилось, что это тот же самый 8684. Проблема была решена.

Тем не менее, то что для всего программирующего мира обычная рабочая ситуация, для компании, чрезмерно и публично гордившейся отсутствием проблем в ее продукции, это был удар ниже пояса.

Четвертая альфа должна была стать последней альфа-версией, в 2013 году планировался выпуск R1. На всякий случай, приступили к подготовке еще и R1/Beta 1.

В 2014 Адриан Дестюгю получил контракт на приведение R1/Beta 1 в релизное состояние, но, несмотря на самоотверженную работу с 9 утра до полуночи, обнулить число открытых багов ему не удалось.

Бета-версии выпускаются именно для обкатки их на максимально широком числе самых разных конфигураций, в разных условиях. Статус бета - предупреждение пользователю. А альфа - предупреждение в квадрате. Опаснее чем альфа только nightly builds.

Справятся ли они с релизофобией?

После Адриана Дестюгю, веткой R1/Beta 1 занималось еще несколько человек, сейчас (по данным на 14 августа 2018 года), в треккере R1/Beta 1 зарегистрировано 330 багов, из них 320 закрыто и 10 (только 10!) открыто. То есть... вот-вот? Поживем - увидим.

В ветке R1 общее число багов близко к десяти тысячам, и примерно полторы тысячи багов открыты. Коммерсанты давно закрыли бы глаза на все эти баги, и рискнули бы вывести продукт на рынок. В этом есть какой-то смысл - в версиях 1.0.1 и 1.0.2 какая-то часть из самых неприятных багов будет исправлена, то есть будет чем хвалиться...

Пара слов про архаику Haiku

Одна из задач, которую решают в настоящее время разработчики Haiku - избавление от устаревших частей системы, обеспечивающих ее совместимость с BeOS R5. Эти части системы существуют в ней с 2001 года, и, естественно, многое в системе так или иначе зависит от них.

При написании нового кода, как прикладного (за пределами Haiku, Inc), так и системного, старые библиотеки использовались. Задача нетривиальная, но без ее решения двигаться дальше нелегко.

Естественно, использовать приложения написанные для BeOS станет невозможно, но...

Swift в Haiku

В мае-августе 2017, стажер программы GSoC Джозеф ‘Калвин’ Хилл, взялся за проект переноса языка Swift в Haiku.

Менторами у Джозефа были Жером Дюваль и Джулиант Харнат.

Речь не шла о полном переносе Swift, за четыре месяца это нереально. Задачей Джозефа был перенос LLVM, компилятора Swift, REPL (это swift для командной строки), и других основ.

В июле в Haiku уже можно было компилировать несложные программы на Swift 3.1.

В последние дни лета Джозеф начал работать над поддержкой Swift 4.

Джозеф получил стипендию (он студент третьего курса Халлcкого университета в Восточном Йоркшире, Великобритания), после GSoC планировал продолжить перенос Swift в Haiku. Параллельно с учебой.

Работа над Swift продолжается, а у меня может скоро появиться повод связаться с Haiku. Этот язык я люблю.

Сегодня и завтра

В 2018 году в Haiku перенесен LibreOffice, и начались работы по переносу языка Rust.

И, сообщу вам по большому секрету, работа над R1/ Beta 1 тоже активизировалась. Уже не знаю в какой раз, и закончится ли она выходом новой версии...

Что будет завтра, и есть ли у Haiku надежда на лучшее место в мире будущего?

Поживем - увидим...

Apple


Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх