Size: a a a

2020 November 03

AM

Artem Malyshev in rannts
Sergey Arkhipov
Ну да, то, что Кирилл нашел, либо есть ещё декоратор для валидатора конкретного поля.

Датаклассы и attrs тоже то ещё говно. Если у пидантика все это уродство положено во имя благой цели удобства валидации, то на кой божий хрен нужны датаклассы и аттрс понятно не очень. Да, там немного компактнее запись, но не более того. На практике value proposition очень сомнительное. Почти никогда не нужны кастомные сравнения, если нужен свой хеш, то чаще всего он руками пишется. А ради репра тащить - очень, конечно, надо.

Насчёт использования тайпинга в рантайме - может быть, мне ещё ни разу не приходилось лезть в аннотации руками и чего-то из них выковыривать. Боюсь, это где угодно страшно и неприятно
> есть ещё декоратор для валидатора конкретного поля

Если у меня условный user есть в 10 местах схемы с разными названиями, то мне кроме типа ещё и тело декоратора таскать с собой придётся. Так что новый тип данных скорее всего писать придётся.

> у пидантика все это уродство положено во имя благой цели удобства валидации

При всём вышеописанном я это удобство валидации так и не смог разглядеть. Тот же marshmallow.Field в 5 раз выглядит лаконичнее.

Я смотрел на pydantic с точки зрения - mypy. В итоге у них всё равно свой плагин для него.
источник

SA

Sergey Arkhipov in rannts
@proofit404

> Если у меня условный user есть в 10 местах схемы с разными названиями, то мне кроме типа ещё и тело декоратора таскать с собой придётся. Так что новый тип данных скорее всего писать придётся.

Не совсем: https://pydantic-docs.helpmanual.io/usage/validators/#reuse-validators у меня под такие общие валидаторы отдельный модуль есть. Работает неплохо, сложность обслуживания нулевая

> При всём вышеописанном я это удобство валидации так и не смог разглядеть. Тот же marshmallow.Field в 5 раз выглядит лаконичнее.

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

KK

Kirill (Cykooz) Kuzm... in rannts
А в педантике можно у рантайме "модель" модифицировать в зависимости от контекста. Например у меня в рантайме к какому-то ресурсу можно добавить под-ресурс. И мне надо в схеме первого ресурса добавить поле с ссылкой на этот саб-ресурс.
Например в Colander это реализуется за счёт bind-инга схемы (модели). В процессе биндинга передаются любые параметры задающие контекст (например тот самый ресурс). И схема может из контекста достать доп.данные и добавить в свой экземпляр новые поля.

Хотя судя по тому что "экземпляр" модели в педантик - это и есть результат обработки данных, то видимо такое не сработает. Некуда добавлять поля. Не буду же я модифицировать сам класс модели.
источник

SA

Sergey Arkhipov in rannts
Обычно под такое заводится поле с опшналом:

class Mdl(pydantic.BaseModel): 
   field: typing.Optional[Submodel] = None
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Для этого надо знать про это поле на этапе разработки. А у меня всякие DI штуки, и дополнительные поля могут быть добавлены в ресурс одного приложения из другого.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Обычно это в схеме возвращаемого бекендом результата. В схемах для входных параметров не помню что бы такое надо было когда-то.
источник
2020 November 04

SZ

Sergey Z in rannts
Кажется, он забыл сказать, что самодостаточные пакеты ломают всё :)
источник

SZ

Sergey Z in rannts
Инициатива по бойкотированию Wayland
Симон Петер (Simon Peter), создатель формата самодостаточных пакетов AppImage, призвал бойкотировать Wayland "так как он ломает всё".
источник

RB

Roman Bolkhovitin in rannts
От создателей "нужно бойкотировать systemd"?
источник
2020 November 06

БС

Байт Словович... in rannts
pycharm теперь поддерживает режим орхона: https://blog.jetbrains.com/blog/2020/10/23/code-with-me-jetbrains-ides-v2020-3/

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

KK

Kirill (Cykooz) Kuzm... in rannts
Эм, вроде уже давненько про этот плагин писали. Я его поставил на PyCharm 2020.2, что бы не забыть про него.
источник

БС

Байт Словович... in rannts
ну теперь он часть пичарма по дефолту
источник

F

Fred in rannts
не плохо, да
источник

F

Fred in rannts
нужная штука
источник
2020 November 07

AM

Artem Malyshev in rannts
https://github.com/pantsbuild/pants наконец-то maven для питона
источник

💭П

💭 Руслан Прохоров... in rannts
Опять только для линя :-(
источник

AG

Alexander Gorokhov in rannts
Штаны для питона
источник

SA

Sergey Arkhipov in rannts
Я на эту штуку смотрю уже неделю и не могу понять, когда именно она вообще нужна, и когда стоит на нее переходить с устоявшегося тулсета
источник

AM

Artem Malyshev in rannts
Sergey Arkhipov
Я на эту штуку смотрю уже неделю и не могу понять, когда именно она вообще нужна, и когда стоит на нее переходить с устоявшегося тулсета
Коллекция баш скриптов?
источник

AM

Artem Malyshev in rannts
Make?
источник