История изменений
Исправление Chaser_Andrey, (текущая версия) :
Если разработчик проекта сознательно переписал кучу либ, поломав всю совместимость с оригинальными, и к тому же сделал так, что придётся вырывать эти либы «с мясом» из проекта (типа о вызове напрямую API deadbeaf'а), чтобы заюзать ещё где-нибудь - то почему не начать считать эти либы неотделяемой частью проекта?
Если поломается какая-то совместимость в будущем или уязвимость - то это проблемы только данного проекта. Какая разница - придется фиксить код непосредственно самого проекта или бандленых либ, которые ни с чем не совместимы, и не используются за пределами проекта?
Если кто-то ещё решит заюзать эти перепиленные либы - то все проблемы будут тоже только его, с таким же успехом можно взять любой другой кусок кода из проекта.
Да, это неидеальный путь развития софта. Но нужно быть реалистами. В генте в главном дереве есть не один ебилд проекта (опенсорсного!), где используются bundle-libs без права использовать системные. Если проект заинтересует людей, то, возможно, будут нужные патчи и багфиксы. Если нет - то тихо умрёт. И сейчас просто не добавляется ещё один ебилд при наличии людей, готовых его сопровождать.
К тому же в генте ведь есть keyword'ы и маскировка пакетов.
//и если уж зашла речь так сильно о безопасности и QA - то проприетарщина - это потенциально огромная дырища в этой самой безопасности, намного большая, чем bundle libs. Последние можно хотя бы самостоятельно отдебажить и пофиксить, а не ожидать, пока upstream соизволит это сделать.
UPD: меня интересует эта дискуссия хотя бы потому, что было желание самому сделаться ментейнером некоторых пакетов, но сначала разведка поля битвы - с чем сталкиваются текущие ментейнеры и с чем могу столкнуться в будущем я.
Исходная версия Chaser_Andrey, :
Если разработчик проекта сознательно переписал кучу либ, поломав всю совместимость с оригинальными, и к тому же сделал так, что придётся вырывать эти либы «с мясом» из проекта (типа о вызове напрямую API deadbeaf'а), чтобы заюзать ещё где-нибудь - то почему не начать считать эти либы неотделяемой частью проекта?
Если поломается какая-то совместимость в будущем или уязвимость - то это проблемы только данного проекта. Какая разница - придется фиксить код непосредственно самого проекта или бандленых либ, которые ни с чем не совместимы, и не используются за пределами проекта?
Если кто-то ещё решит заюзать эти перепиленные либы - то все проблемы будут тоже только его, с таким же успехом можно взять любой другой кусок кода из проекта.
Да, это неидеальный путь развития софта. Но нужно быть реалистами. В генте в главном дереве есть не один ебилд проекта (опенсорсного!), где используются bundle-libs без права использовать системные. Если проект заинтересует людей, то, возможно, будут нужные патчи и багфиксы. Если нет - то тихо умрёт. И сейчас просто не добавляется ещё один ебилд при наличии людей, готовых его сопровождать.
К тому же в генте ведь есть keyword'ы и маскировка пакетов.
//и если уж зашла речь так сильно о безопасности и QA - то проприетарщина - это потенциально огромная дырища в этой самой безопасности, намного большая, чем bundle libs. Последние можно хотя бы самостоятельно отдебажить и пофиксить, а не ожидать, пока upstream соизволит это сделать.