Comments 36
судя по скриншоту, автор начал писать новость в далеком 2014-го году
Уже не плохо.... еще год потянем на 7-ке....
Есть вроде какие то китайские браузеры, которые даже XP поддерживают
Всего год, что в 10-ке такого, что настолько необходимо браузеру для работы? У нас зоопарк старых ноутов в качестве роутров, nas, "телевизоров" и так далее на 7-ке, 10-ка не факт что на них заведется, обидно.
Microsoft активно устаревает старый и переходит (перешли) на новый тулчейн.
Какая связь?
Я не знаю как они там собирают, но что-то дебажить - вообще головная боль. У Microsoft даже ссылки старые на скачивание найти проблема, документацию тоже (а страницы удалять они любят). Моя бага висела несколько месяцев, а человек, который взялся фиксить, не то что Win7 под рукой не имел (как я понял из комментариев), так и десятки тоже.
Из комментариев с багзиллы следует: в первую очередь нагрузка на testing/qa, потом ветвления в коде, инфраструктура тестов, и потом сами сборки.
есть вариант на браузере MyPal https://habr.com/ru/articles/373803/
Бабки, бабки,...., бабки! Вся причина в них. Нужно как то, во-первых, сгонять пользователей пользователей со старых ОС, что б те покупали новую, а во-вторых что бы покупали новое железо, старое делают несовместимым с новой ОС. Рука руку моет. А потом еще что то заливают про глобальное потепление и сбережение ресурсов.
такой специфичный UX дизайнеры макаки не предусмотрели. Или может вам сервер без плиточек? С другой стороны на хрена роутеру браузер, кроме как малварь крутить?
Вообще ситуация давно напрягает: железо ещё позволяет, а браузера нету. Это неправильно. Полагаю, возможно сделать сайт-прокси, который сам по себе будет открываться в определённом старом браузере (какой там Firefox последний для WinXP? Вот заточить под него, а также под 115 для Win7-8), он будет представлять собой виртуальный браузер: адресная строка, вкладки и т. п. Открываешь Firefox одной из этих версий под соответствующей ОС, заходишь на сайт с виртуальным браузером и из-под него работаешь. Как это лучше сделать технически - вопрос дискуссионный.
Или другой вариант: мини-виртуальная машина для запуска только одного свежего браузера на старой ОС.
мини-виртуальная машина для запуска только одного свежего браузера на старой ОС.
вы изобрели: докер, flatpak, appimage
А зачем вам новый браузер на ОС-копролите? Будьте последовательным, пользуетесь копролитом вместо ОС пользуйтесь и копролитом вместо браузера.
железо ещё позволяет, а браузера нету
Что это такое за железо, которое позволяет семёрку, но не позволяет десятку?
Например без SSD?
Ну вот передо мной комп с Phenom II X4, 8GB RAM и HDD. Вполне себе десятка шевелится. Да, неспешно. Ну так без SSD всё неспешно.
Во времена Win7 x4 был необычен в ряду обычных х2.
В школе стояли компы на Celeron, мне сказали, что самая высокая версия винды которая на них устанавливается - 8.1. И то не сказать что бы она на их летала
А у меня в конторе обычная конфигурация i3 и 4 Гб ОЗУ
Семерка работает, а вот десятка — просто мучение
Например, с процессором без SSE2 инструкций: третьи пентиумы, AthlonXP. Да, я знаю, это сильно старое железо, тот же ютуб на таком почти неюзабелен. И всё же, если у пользователей есть старое железо и старая ОС, и его всё устраивает, неправильно лишать его современного браузера. Сейчас у людей ещё полно всяких Core2Duo, Athlon64, а то и четвёртых пней и прочего подобного старья, на котором хорошо работает XP, приемлемо работает Win7 и не работает или плохо работает 10. "Работает - не трожь". Может, человек с этого компьютера только читает новости и ЖЖ да слушает музыку, зачем ему новый? Чтобы создать лишний мусор? А новый компьютер офисного уровня сейчас собрать, думаю, выйдет не меньше 20 тысяч, и зачем оно нужно? Для многих это дорого. Ограничение по браузеру мне лично видится искусственным: не должно быть так уж сложно разрабатывать новые браузеры, сохраняя поддержку со старой ОС. Такая ли великая необходимость во внедрении фич, которые в старой ОС уже не заработают? Устанет человек от тормозов - купит новый, так должно быть. Не говоря уже о том, что сами сайты часто неоправданно жирные, но это другой разговор.
А что вам запрещает поставить на старое железо новый линукс?
видимо пользователей Mozilla Firefox так много, что можно и диктовать им какой операционной системой они должны пользоваться
Господа, а можно вопрос чисто для расширения кругозора? А чего такого суперсовременного Firefox использует от Windows 10-11 для ПК, что относительно современные 8-ку или 7-ку приходится снимать с поддержки? Я могу понять, если бы они прекратили поддерживать 32-разрядные системы, но чем не угодила 64-битная восьмёрка? Тем более, в случае такого кроссплатформенного продукта, как Firefox, который по определению не является глубоко интегрированным с последними решениями Microsoft. Правда интересно. Какие там настолько жёсткие зависимости от Win10?
Ладно браузер - сейчас это достаточно сложный софт, активно использующий системные средства защиты памяти, межпроцессное взаимодействие и прочие продвинутые ништяки, которые в новых ОС действительно могут быть более продвинутыми/удобными и т.п. А большинству более традиционного софта по уши достаточно API даже уровня XP, не говоря уже о Win 7, как и большей части андроидного софта вполне достаточно уровня 4.0-5.0.
Но типичный современный разработчик, думая, что "программирует", на самом деле "записывает алгоритм средствами языка", после чего "применяет к записанному средства преобразования в машинный код". То есть, сколько-нибудь цельного понимания того, что делают с исходным кодом компилятор/линкер, и что потом будут делать процессор и ОС, у большинства нет. В команде Firefox, само собой, понимающих пока хватает, но результат определяется, как известно, самым слабым звеном. Если какая-нибудь группа, ответственная, например, за рендеринг PDF, заявит, что их любимая библиотека скоро перестанет поддерживать Win 7 (хотя и это может быть следствием банального неумения настраивать компилятор/линкер у авторов библиотеки), то финал, увы, предсказуем.
Спасибо за пример с библиотекой PDF. Я почему-то думал, что FireFox всё своё таскает с собой, чтобы быть более-менее одинаковым на всех платформах.
Может, они тот рендерер сами написали, или он изначально кроссплатформенный. Фишка в том, что такие вещи обычно пишут чистые прикладники, большинство которых воспринимает всю эту кухню с компиляцией, генерацией кода, редактированием связей, настройкой адресного пространства и прочего, как чистую магию. Если им сказали, что поддерживается только Win10, они даже не подумают, почему именно.
Я почти каждый год ставлю в параллель очередные SDK, WDK и HLK от MS, поскольку в новых регулярно появляются полезные функции, в то время как некоторые утилиты в старых работают стабильнее. Разумеется, новые установщики отказываются запускаться под семеркой, поэтому давно уже тупо распаковываю вручную из MSI, им этого хватает. Разумеется версии 8.x не запускаются под семеркой, а версии 10.x - и под восьмерками, ибо в PE указаны минимальные версии 8.0, 8.1 и 10.0 соответственно.
После каждой установки я прогоняю по всем EXE и DLL утилиту revers (раньше, пока о ней не знал, обходился editbin), меняя версии OS и subsystem на 5.0. Происходит чудо - почти весь софт нормально работает под семеркой, многое - под XP, а некоторое - даже и под 2k.
Это прокатывает с достаточно большим процентом нового софта. И даже если что-то не работает после смены версий в образах, иногда таки удается запинать, перенеся в целевую систему нужные версии VC CRT DLL и/или Downlevel/MinWin DLL (api-ms-win-*).
Кому не лень возиться - очень рекомендую.
О, SDK! Логично, да. А что, в сборках под Windows нельзя указать что-то типа Target OS Version? Даже в macOS, где традиционно кладут на обратную совместимость, есть в Xcode возможность собирать App под предыдущие 3-4 версии OS, если только приложение не использует какие-то уникальные фичи от SDK последней версии. В мире Apple отказ от систем всего 2 версий назад очень любят монстры типа Adobe, когда работают по подписочной модели, чтобы вынудить пользователей купить подписку и использовать только последнюю версию, отсекая возможность купить на eBay ключ старой standalone-версии. Хочешь старый лицензионный Creative Suite за $20, изволь жить под старой macOS старом маке. А от OpenSource я такого не ожидал – ради сотен тысяч пользователей можно же найти комп с Windows 7 и SDK. Кросс-платформенный проект без больших зависимостей должен по логике без особых проблем собраться.
PS. Спасибо за крутой лайфхак с правкой PE!
Версии, само собой, указать можно. Но для простоты все это завязано вместе: чтобы получить функционал старших версий системы, нужно указать соответствующую версию в макросах, а это автоматически тянет за собой установку той же версии в заголовок PE. Развязать можно, и не так уж трудно, но нужно понимать, как это все устроено, и не лениться. Типичный же программист, при любой попытке вмешаться в процесс компиляции/сборки (который для него выглядит магией), видит сотни ошибок или предупреждений, приходит в ужас, и рапортует начальству/заказчику, что "иначе никак'. :)
С WDK/DDK то же самое. Возможно, Вы обращали внимание на то, что есть пакеты драйверов, где только один .sys, и которые можно установить хоть в XP, хоть в десятку, а есть пакеты, где под каждую систему свои бинарники. Иногда это оправдано (например, когда радикально меняется протокол), но в большинстве случаев не так уж трудно сделать бинарник, который будет определять доступную функциональность системы, и разумно использовать то, что есть. Но проще тупо собирать каждую версию отдельно, выкидывая сборки под старые версии по мере задействования функций из новых.
Технически, самые последние SDK/WDK позволяют собирать бинарники хоть для Win9x и NT4, если запускать компилятор/линкер напрямую, со своими командными строками, и уметь избегать лишних зависимостей. Но это ж надо уметь. :)
Mozilla Firefox перестанет поддерживать Windows 7 и 8 в 2024 году