Post Thumbnail

Эндрю Несбитт разобрал, как устроены имена пакетов в разных менеджерах и почему это та ещё головная боль. В плоском неймспейсе (как в PyPI или RubyGems) всё просто: кто первый встал - того и тапки, поэтому у нас есть крутые короткие имена вроде rails. Но хорошие имена быстро заканчиваются.

npm придумал скоупы, чтобы компании могли не толкаться локтями, но старые пакеты так и живут в плоском неймспейсе, и сломать это уже нельзя - мир рухнет. В Maven пошли по-взрослому, привязав имена к доменам, но это породило проблему мертвых доменов: треть этих "групп" можно купить и подкладывать мины в зависимости.

Go вообще решил, что registry не нужен, и использовал URL-адреса репозиториев, но потом выяснилось, что без прокси-сервера и базы данных с хешами всё равно никуда.

А в Rust теперь годами горбатятся над фичей, которую надо было продумать с самого первого дня

Похожее

Post Thumbnail

Аллокаторы

Автор рассказывает, как устроены аллокаторы памяти в современных языках вроде Ru...

Post Thumbnail

Игры на Rust

Новые посты в большом туториале по написанию игр на Bevy. Круто, что автор не за...