Nova Prism v0.9.4 — бета
Pre-release
Pre-release
Установленные программы теперь сжимаются плотнее, чем у 7-Zip на максимуме.
Что изменилось
- Девять настоящих установленных программ (2,74 ГБ) — отставание было 1,8%, стало опережение на 0,2%. Одним архивом на всё дерево — 593 862 888 байт против 621 756 049 у
7z -mx9(на 4,5% меньше) и на 13% быстрее, чем в 0.9.3. Разбор начался с вопроса «какой ТИП файлов проигрывает», а не «какая установка», и ответ оказался узким: у.exeотставание было 15,1%, при том что по одному файлу мы на 0,10% МЕНЬШЕ 7-Zip. Весь проигрыш давали девять программ инструментария Go, в каждую из которых влинкована одна и та же среда исполнения — один и тот же код лежал в наборе девять раз, а увидеть это можно, только если он попадает в одно окно сжатия. Теперь блок с машинным кодом растёт до 64 МБ. Это предел, который формат допускал всегда, поэтому архивы 0.9.4 читает и распаковывает версия 0.9.3 — проверено. - Ресурсы браузерных приложений (
.pakу Discord, opencode и подобных) — на 20,9% меньше. Два таких приложения несут два почти одинаковых набора языковых файлов, но по алфавиту путей они оказывались в 56 МБ друг от друга. Механизм, который кладёт одноимённые файлы рядом, включался только от мегабайта, а языковой файл меньше; теперь порог 96 КБ, и вместе с ним ужесточена проверка размера. Это не подгонка, а измеренная граница: у.pak98,3% одноимённых пар совпадают по размеру в пределах 2%, у установленного Python — только 13%. - Уровень по умолчанию тоже стал плотнее — на 1,8% на дереве программ, за то же время.
- Уже сжатые данные упаковываются в полтора раза быстрее при том же архиве до байта: 405 МБ музыки — 21 секунда вместо 35.
- В окне теперь открываются и распаковываются чужие архивы:
.zipи всё, что на нём построено (.jar,.apk,.docx,.fb2.zip), а также.7z. Раньше это умела только командная строка, а окно отвечало «не архив NOVA». Изменять чужой архив нельзя — только читать;.rarпрограмма узнаёт и говорит об этом прямо. - Даты файлов больше не теряются при работе с чужими архивами. Распакованный из
.zipили.7zфайл получал текущее время вместо своего, а.zip, созданный самой программой, помечал всё моментом упаковки. Причина не в мелочи: в zip время хранится в формате MS-DOS, а оно местное и без указания пояса, поэтому прочитать его как UTC — значит сдвинуть каждый файл на смещение машины. Теперь правильный ответ спрашивается у Windows вместе с правилами перехода на летнее время для конкретной даты, а если в архиве есть более точная метка (поле 0x5455), берётся она. Проверено на четырёх случаях против 7-Zip — везде совпадает до секунды.
Silesia, enwik8, PDF, фотографии, звук и набор для пережатия не изменились ни на байт на всех трёх уровнях: новые правила касаются только машинного кода и одноимённых файлов.
Старые архивы читаются как читались.
Полный список изменений — в CHANGELOG.