Как работает функция reload()?
Эта функция нужна для того, чтобы перезагрузить изменившийся код из py-файла без рестарта интерпретатора.
Дело в том, что любой импортированный модуль при повторном импорте не будет перечитывать файл. Функция импорта вернёт уже загруженный в память объект модуля. Чтобы обновить код, нужно либо перезапустить всю программу, либо использовать функцию reload()
from importlib import reload
reload(my_module)
🔸 Функция reload() принимает в качестве аргумента только объект модуля или пакета. Она не может перезагрузить класс или функцию. Только весь файл целиком!
🔸 Перезагрузка пакета перезагрузит только его файл __init__.py, если он есть. Но не вложенные модули.
🔸Она не может перезагрузить ранее не импортированный модуль.
🔸При вызове функция reload() перечитывает и перекомпилирует код в файле, создавая новые объекты. После создания новых объектов перезаписывается ранее созданный неймспейс этого модуля.
Это значит, что если где-то этот модуль импортирован через import и обращение к атрибутам происходит через неймспейс (имя) модуля, то такие атрибуты обновятся.
Если какие-либо объекты из этого модуля импортированы через from то они будут ссылаться на старые объекты.
Напишем простой модуль
# mymodule.py
x = 1
Теперь импортируем модуль и отдельно переменную х из модуля
>>> import mymodule
>>> from mymodule import x
>>> print(mymodule.x)
1
>>> print(x)
1
Не перезапуская интерпретатор вносим изменения в модуль
# mymodule.py
x = 2
Делаем перезагрузку модуля и проверяем х ещё раз
>>> reload(mymodule)
>>> print(mymodule.x)
2
>>> print(x)
1
То же самое будет если присвоить любой объект переменной (даже словарь или список)
Повторный импорт обновляет значение
>>> from mymodule import x
>>> print(x)
2
🔸Созданные инстансы классов не обновятся после перезагрузки модуля. Их придётся пересоздать.
#tricks#basic
🍿#DRIFT Американская юридическая фирма Gibbs Mura объявила о начале расследования по поводу возможного коллективного иска в связи с взломом Drift Protocol. Расследование будет сосредоточено на том, приняла ли Circle своевременные меры по заморозке средств. Фирма заявила, что в настоящее время собирает информацию от пострадавших инвесторов и оценивает целесообразность подачи иска против Circle за непринятие действий по предотвращению потери средств.
#DRIFT запампился на >100% на новости. С утра он не покидает топы по спотовым и фьючерсным покупкам на всех CEX. Примечательно, что крупные покупки начались лишь спустя несколько часов после опубликования новости в боте в 2:25 по мск.
📊Chart👈
🏴☠️#DRIFT The fallout from the Drift incident continues to expand, with the number of affected protocols growing from 11 to 20, including PiggyBank, Perena, Vectis, Valeo, Amp Pay, Loopscale, Prime Numbers Fi, Gauntlet and Expent. Prime Numbers Fi is estimated to have lost >$10 million. Wublockchain
💸#DRIFT Проект Drift Protocol привлекает$127,500,000 от Tether для восстановления средств пользователей после взлома.
Еще $20,000,000 помощи выделят другие партнеры.
Ранее: взлом на $285m
Crypto Headlines
#DRIFT
Drift: атака 1 апреля готовилась около полугода и, вероятно, связана с северокорейской группой
Drift сообщила, что продолжает расследование атаки вместе с правоохранителями, Mandiant и ончейн-специалистами. Все оставшиеся функции протокола заморожены, а скомпрометированные кошельки удалены из multisig.
По предварительным выводам, атака готовилась с осени 2025 года.
Злоумышленники выдавали себя за торговую фирму, знакомились с участниками команды на крупных криптоконференциях, вели с ними рабочие обсуждения, создавали общий трек взаимодействия и даже завели на Drift более $1 млн собственного капитала через Ecosystem Vault.
Предполагаемые векторы компрометации:
— один из участников мог заразить устройство после клонирования репозитория, присланного как якобы фронтенд для vault
— второй мог установить через TestFlight приложение, которое выдавали за кошелек
— отдельно Drift допускает связь с известной уязвимостью в VSCode и Cursor, при которой открытие файла или репозитория могло запустить вредоносный код без предупреждения
По оценке Drift и команды SEAL 911, с атакой могут быть связаны те же участники, что стояли за взломом Radiant Capital в октябре 2024 года. Речь идет о группе, которую ранее связывали с UNC4736 / AppleJeus / Citrine Sleet, то есть с инфраструктурой, ассоциируемой с КНДР.
Drift отдельно подчеркивает важный момент: люди, которые лично выходили на связь с командой, скорее всего, не были гражданами КНДР. По версии проекта, для офлайн-контактов могли использоваться посредники с полностью проработанными легендами, карьерной историей и профессиональными профилями.
#DRIFT
Drift взломали через фейковый токен и отключение лимитов на вывод
Атакующий заранее выпустил 750 млн фейковых CVT, создал пул на Raydium с ликвидностью всего около $500 и неделями прогонял через него сделки, чтобы собрать историю цены. Затем через скомпрометированный админский ключ Drift токен добавили как новый spot market.
В той же транзакции лимиты на вывод по USDC и еще четырем рынкам подняли до 500 трлн, фактически отключив защиту. После этого злоумышленник завел 785 млн CVT как залог, нарисовав себе около $785 млн обеспечения при реальной ликвидности пула в районе $700.
С этим фейковым залогом за 12 минут вывели активы почти из всех хранилищ:
— 66,4 млн USDC
— 42,7 млн JLP
— 23,3 млн MOODENG
— 5,6 млн USDT
— 5,2 млн USDS
— 2,6 млн JUP
— 583 тыс. RAY
— 477 тыс. WETH
Дальше средства начали выводить и дробить:
— 103 млн USDC отправили на один адрес
— 42,7 млн JLP сожгли через Jupiter Perps
— остальное обменяли в SOL и раскидали по нескольким кошелькам
#drift
Немного о проекте над которым сейчас работаю в рамках Blockchain Sports Drift - это дрифтовый автопилот. Я как всегда себе верен и для начала создал довольно функциональный инструмент с помощью которого можно отображать телеметрию машины, делать записи и воспроизведения, работать над траекторией и контролировать обучение и всё через юзер-френдли интерфейс. Система работает как с симуляцией Assetto Corsa так и нашей специально подготовленной машиной. Пока я использую традиционные RL алгоритмы, но стараюсь делать платформу гибкой для расширения и использования альтернативных решений в бедующем.
И как врачи и алхимики древности плоды своих исследований я испытываю на себе) Также со мной в испытаниях в роли пилота Мак Кравец, контролирует большую зеленую кнопку (в нашем случае она зеленая) и страхует нас.
И конечно, развитие это проекта это результат совместной и слаженной работы очень грамотных инженеров и менеджеров. По мере развития проекта буду рассказывать о нем под тегом #drift