Size: a a a

2020 May 25

AS

Artem Savinov in rannts
сделали вроде "обычную фичу", но всем же приятнее стало)
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Блин, у меня
except Exception:
не ловит исключение.
Только вот так:
except:

Как понять что вообще происходит? Какая ошибка?
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Python 3.8 и asyncio
источник

KK

Kirill (Cykooz) Kuzm... in rannts
traceback.print_last() тоже не работает, т.к. нет в sys последнего исключения
источник

NO

Nikita Orlyakov in rannts
Kirill (Cykooz) Kuzminykh
Блин, у меня
except Exception:
не ловит исключение.
Только вот так:
except:

Как понять что вообще происходит? Какая ошибка?
а так:
except BaseException?
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Точно, сработало
источник

NO

Nikita Orlyakov in rannts
походу системный экспшн какой-то
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Хм, странно, а почему всех в интернете лечат по поводу except Exception, но не говорят про BaseException. Это ведь крутой отмазон от невнимательных линтеров 😊
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Это был asyncio.CancelledError
источник

RB

Roman Bolkhovitin in rannts
Kirill (Cykooz) Kuzminykh
Это был asyncio.CancelledError
Ты впереди планеты всей ))
Changed in version 3.8: CancelledError is now a subclass of BaseException.
источник

AM

Artem Malyshev in rannts
Roman Bolkhovitin
Ты впереди планеты всей ))
Changed in version 3.8: CancelledError is now a subclass of BaseException.
источник

БС

Байт Словович... in rannts
Roman Bolkhovitin
Ты впереди планеты всей ))
Changed in version 3.8: CancelledError is now a subclass of BaseException.
ох... вангую кучу проблем в либах..
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Ну мне повезло, я это использовал только в целях дебага, что бы понять в каком именно месте у меня случается этот самый CancelledError. Просто решил схалявить и написал except Exception
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Но почему они так сделали понять можно. Это наверняка был воркэраунд, что бы обмануть мамкиных программистов, которые лепят except Exception, который очень мешает отмене асихнронных тасков.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Собственно у меня поломался один из тестов, только из-за того что я добавил asyncio.wait_for() с таймаутом для вызова одной из корутинок. И если раньше отмена всей этой байды случалась чутка позднее, успевался выполниться код идущий после строчки, которую я поменял. То видимо этот wait_for() добавил каких-то оверхедов, и теперь отмена таски случается внутри него. А тест был достаточно хрупкий и чувствительный к этому.
источник

БС

Байт Словович... in rannts
Под виндой низя собрать эту штуку.. Жаль.  Разве что цигвином
источник

KK

Kirill (Cykooz) Kuzm... in rannts
А что там не собирается? Какая-то из зависимостей?
источник

KK

Kirill (Cykooz) Kuzm... in rannts
И что именно не собирается: питонячий пакет или сервер на Rust?
источник

БС

Байт Словович... in rannts
sys/socket.h требуется. А под виндой её нет. Там есть winsock2
источник

БС

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