172 похожих чатов

Слушайте, а у вас не складывается впечатление, что crates.io становится

похож на npm? То есть, ты ставишь какой-нибудь cargo-edit, а он тебе тянет целый tokio рантайм + кучу вспомогательных завимиостей. Это начинает беспокоить

26 ответов

10 просмотров

Таков путь.

да

Пакеты как пакеты. Альтернатива?

Главное что бы без leftpad-rs

Имхо решение простое: не использовать такие либы/утилиты. Либо пиздить таких разрабов, смотря что проще.

Пашечка
Имхо решение простое: не использовать такие либы/у...

То есть автор каждой утилиты должен писать собственный парсер аргументов командной строки и хттп-клиент?

faramo_zayw 👾
Как в С++ сделоть :yoba:

То есть апт-пакет, который за собой тянет 400 мб мусора от gcc до readline?

Mikail Bagishov
То есть автор каждой утилиты должен писать собстве...

Тут надо смотреть. Это как тянуть весь Qt, но использовать только его строки. То есть когда нужен парсер - спору нет, бери что есть. Однако, если ты и половины его возможностей не пользуешь, может лучении взять парсер попроще и поменьше?

Пашечка
Тут надо смотреть. Это как тянуть весь Qt, но испо...

А может проще впилить в карго глобальный кэш?

Mikail Bagishov
То есть автор каждой утилиты должен писать собстве...

Не передергивай. Если зависимость оправдана - нет претензий.

Ivan Boldyrev
Не передергивай. Если зависимость оправдана - нет ...

Я думаю, что главный источник неоправданных зависимостей - это default features.

Mikail Bagishov
А может проще впилить в карго глобальный кэш?

И как он поможет, когда твой бинарь увеличивается в 2 раза из-за депенденси, которые висят мертвым грузом?

Mikail Bagishov
Я думаю, что главный источник неоправданных зависи...

Если фичи хотя бы предусмотренны - это замечательно.

Mikail Bagishov
То есть автор каждой утилиты должен писать собстве...

Создавать разные подэкосистемы под разные потребности. Например, в ржавом игрострое сейчас есть wgpu/winit стек, который обобщенный, гибкий, и состоит из кучи кода и зависимостей, и есть miniquad стек, который не такой технически навороченный и гибкий, зато рекурсивно тянет на порядки меньше кода и легче хакается

Пашечка
И как он поможет, когда твой бинарь увеличивается ...

В дебаге мне в общем-то неважно: все равно несравнимо меньше по сравнению с target. В релизе все ненужное оптимизатор выкинет.

Mikail Bagishov
В дебаге мне в общем-то неважно: все равно несравн...

У меня конечно кресты головного мозга, но я хочу видеть в расте нормальные шареные библиотеки, а не линковать всё в статике. Тут оптимизатор ничего не выкинет.

Пашечка
У меня конечно кресты головного мозга, но я хочу в...

Чтобы длл-ки хорошо работали, надо не делать мономорфизацию (дженерик код динамически фиг слинкуешь). А если не делать мономорфизацию, то уже возможно и длл-ки не нужны :)

Mikail Bagishov
Чтобы длл-ки хорошо работали, надо не делать моном...

Дженерики отдельная песня, у меня к ним вообще много вопросов, но это из-за моего недопонимания всё же)

Пашечка
У меня конечно кресты головного мозга, но я хочу в...

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

.
Недавно линус торвальдс высказывался, что шареные ...

Code bloat go brr. Но шареные библиотеки всё равно зло. Проблема в том, что не всегда понятно, какое зло меньше.

А у меня сложилось впечатление, что неймспейс пакетов замусорен. Любой Вася пупкин может сделать (и делает) пакет с именем типа "oracle".

Anatolii
А у меня сложилось впечатление, что неймспейс паке...

Особенно забавно, когда находишь что-то типо websocket и оно оказывается депрекейтнуто 🤦‍♂️

Похожие вопросы

Обсуждают сегодня

Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
А чем вам питонисты не угодили?😂
.
79
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
Всем привет. Поделитесь, пожалуйста, опытом. Есть форма, на которой имеется dbgrid и кнопки: добавить, редактировать, удалить. Если нет записей в dbgrid, то кнопки редактирова...
Евгений
5
type TExtensions<GExtender>=class function GetExtension<GEntityExtenderType>:GEntityExtenderType; end; function TExtensions<GExtender>.GetExtension<GEntityExtenderType...
zamtmn
8
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Всем привет, препод задал вопрос, подскажите пожалуйста, какой адрес инкапсулирует указатель?
Свинка Пеппа
8
Почему никто ещё не написал квантовую виртуальную машину на Windows?
КТ315
7
Вот смотрите у меня есть два стрима сейчас fs, cs: TStream; fs := TFileStream.Create('filename'); cs := TCompressionStream.Create(compression_level, fs); Я хочу сделать так: ...
notme
5
Карта сайта