Closed tsayukov closed 7 months ago
Привет. В коде только удаления, так и должно быть? Замен не требуется?
Привет. В коде только удаления, так и должно быть? Замен не требуется?
@GitSparTV Да, было предложено отказаться от этой либы, если она нигде не используется!
Issue #90
Способов получить нужный кодек не так много, это функции:
NBlockCodecs::Codec
, передаём в неё название кодека, например "zstd06_level" (level --- уровень сжатия);NBlockCodecs::ListAllCodecs
иNBlockCodecs::ListAllCodecsAsString
, чтобы получить все зарегистрированные кодеки. Регистрация кодеков происходит в анонимном неймспейсе при инициализации глобальной переменной. Даже если заинклюдить соответствующий cpp-файл, прямого доступа получить не получится, разве что запустить заново регистрацию, но уже существующий кодек ещё раз не добавиться (т.к. хранилище --- хэш-мапа).В библиотеке
cpp-http-io
(library/cpp/http/io/compression.cpp:42
) происходит добавление существующих кодеков в собственную кодек-фактори, но кодекиzstd08
(он же zstd) иzstd06
(искомый) не добавляются. Других использованийListAllCodecs*
внеlibrary/cpp/blockcodecs
не обнаружено. Проверяя, передавали ли в методNBlockCodecs::Codec
строку, начинающуюся на "zstd06" (других алиасов у кодека нет), выяснено, что происходило это только в юнит-тестах, чтобы проверить факт регистрации всех возможных кодеков.Т.к. таргет
blockcodecs-codecs-legacy_zstd06
вblockcodecs
линкуют публично, его в теории могли бы использовать в остальных зависимых библиотеках, но нужных хедеров изcontrib/libs/zstd06
никто не включал.Более общий поиск по "zstd" показал, что в
library
есть библиотекиstream
иmonlib
, но они используют zstd напрямую, линкуясь кZSTD::ZSTD
(то есть это не наша искомая zstd06). Ещё следы zstd нашлись в client, но там та же самая картина: либо это зависимость отcpp-stream-zstd
, либо отсpp-monlib-*
.Таким образом, можно с большой долей уверенности сказать, что от использования zstd06 можно безопасно отказаться.