TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #424 · 13 апр.

Стандартная библиотека asyncio это стандарт (начиная с Py3.4) для работы с асинхронным кодом. Но эта библиотека достаточно низкоуровневая, со своими проблемами, устаревшими подходами. Чтобы исправить это, были созданы разные обертки и альтернативы с реализацией популярных инструментов и паттернов асинхронного программирования. Это такие библиотеки как: - trio: улучшает корректность выполнения, не оставляя потерянных корутин при ошибках, то есть предлагает Structured Concurrency из коробки. - curio: упрощение синтаксиса и читаемости кода, больше похоже на работу с потоками. - anyio: универсальная обертка над asyncio или trio плюс множество вспомогательных инструментов. anyio используется в FastAPI как основная библиотека для работы с асинхронным кодом и вызовом синхронного кода из асинхронного. В общем, рекомендую почитать про возможности anyio, возможно вы более не будете использовать чистый asyncio в своих проектах) Это совсем не значит что дефолтный asyncio плох, он тоже даёт достаточный для работы функционал и продолжает развиваться. Например, в версии 3.11 появились TaskGroup, с похожим на trio функционалом. Так что он тоже актуален, просто придется больше написать кода самостоятельно. #libs#async

Hashtags

Резултати

Пронајдени 39 слични објави

Пребарај: #gradle

当前筛选 #gradle清除筛选
Android Broadcast

@android_broadcast · Post #9980 · 04.05.2026 г., 06:49

🐘 В мире Android и тем более KMP проектов огромное количество зависимостей. Та самая ситуация, когда build зеленый, sync прошел, но приложение падает в рантайме из-за NoSuchMethodError или ClassNotFoundException, знакома многим. Причина — тихий конфликт версий. Gradle по умолчанию старается брать самую новую версию из всех найденных, но срабатывает не всегда. В разных модулях одного проекта могут спокойно жить разные версии одной библиотеки (например, okhttp 4.9.0 в модуле А и 4.11.0 в модуле Б). Gradle не считает это конфликтом, потому что модули изолированы. В рантайме при передаче объекта между модулями — ClassCastException. Особенно больно это бьет в KMP, где общая бизнес-логика связывает всё в единую цепочку. Плагин 🐱Dependency Conflict Analyzer переворачивает подход. Он встраивается в Gradle и каждый раз при синхронизации автоматически анализирует весь граф зависимостей по всем модулям. Не нужно ничего запускать вручную или гадать, кто что подтянул. Если есть расхождение в major-версиях — плагин сразу покажет конфликт в консоли. Причём он найдет даже скрытые расхождения между разными модулями, которые Gradle игнорирует. # Пример работы плагина Version conflict detected: org.slf4j:slf4j-api - version 2.0.17 via: - project :app -> ch.qos.logback:logback-classic:1.4.11 -> org.slf4j:slf4j-api:2.0.17 ... - version 1.7.25 via: - project :app -> org.apache.logging.log4j:log4j-slf4j-impl:2.17.1 -> org.slf4j:slf4j-api:1.7.25 Такая проактивная проверка помогает фиксить конфликты еще на этапе разработки и писать более стабильный код. Попробуйте. #Gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9520 · 22.09.2025 г., 14:24

🐘Вышел Gradle 9.1.0 с поддержкой Java 25 и новыми фичами. Из интересно - "Визуалиация таска графов", но сразу грусть - не ждите картинки 😡 Насыпали везде по немного улучшений, запромоутили фичи в стабильные, поправили баги и на этом всё. #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9383 · 04.08.2025 г., 06:06

📹 Gradle выложили мини курс по переиспользованию build логики между Gradle модулями (EN, 6 уроков, 30 минут) 00:00 - Папка buildSrc 02:06 - Convention Plugin 09:29 - Version Catalog 15:58 - Общие Task 19:09 - Производительность buildSrc 23:32 - included build #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9379 · 01.08.2025 г., 09:55

📹Обзор что нового в Gradle 9.0 (EN, 25м) 00:00 – Что нового в Gradle 9 и как обновиться 03:08 – Configuration Cache 08:59 – Поддержка Kotlin 2.2 10:10 – Kotlin build script compilation avoidance 10:46 – Улучшения nullability в Gradle API 14:05 – Gradle теперь требует Java 17 или выше 15:39 – Обновление до Groovy 4 16:43 – Reproducible архивы включены по умолчанию 19:00 – JAVA_HOME теперь может использоваться как источник toolchain в Daemon JVM 21:39 – Gradle Wrapper теперь поддерживает символьные версии и SemVer (например, latest.release) 23:32 – Какие фичи стали стабильными, что устарело и что удалено 25:05 – Полезные ссылки на документацию и ресурсы 26:06 – Рекомендованные best practices для работы с Gradle 9 26:53 – Заключение #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9378 · 01.08.2025 г., 09:48

🐘Вышел Gradle 9.0 Самое важное в Gradle 9 - ❗️пришло время адаптировать Configuration Cache❗️. Пока его не включили по умолчанию и отложили до 10 версии, но включение режима - рекомендованный подход для всех! Кэш конфигурации очень сильно прокачали и улучшили, он уже готов к использованию! Что еще: 👉 Обновили используемый Kotlin до версии 2.2, а Groovy до версии 4.0 👉 Kotlin build script теперь поддерживают compilation avoidance - будет пропускаться их повторная компиляции, если не найдется значимых изменений. Это положительно скажется на время сборке, если вы используете Kotlin в buildSrc 👉 Перешли на использование JSpecify Nullability аннотаций 👉Минимальная версия Java - 17 👉Улучшения для авторов плагинов Как и с любым мажорным релизом Gradle часть фичей стала стабильной, а deprecated API удалили, так что после миграции ваш проект может потребовать доработки или обновления подключенных Gradle плагинов. #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9302 · 06.07.2025 г., 19:08

🐘Gradle начиная с версии 8.0. обязательно требует зависимостей между task, если один использует результаты другого Явное объявление зависимостей требуется чтобы корректно выстроить порядок выполнения task-ок, гарантировать воспроизводимость сборки. #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9057 · 05.05.2025 г., 07:49

🐘Официальные лучшие Gradle практики от Google, JetBrains и разработчиков Gradle #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #8818 · 18.03.2025 г., 11:11

🐘Состояние Gradle Configuration Cache и будущее фичи В больших проектах на Gradle одной из самых долгих является фаза конфигурации проекта, во время которой создаются все задачи и устанавливаются связи между ними. Команда Gradle уже давно работает над решением этой проблемы с помощью Gradle Configuration Cache — возможности сохранять результаты фазы конфигурации и повторно использовать их в последующих запусках. В блоге Gradle вышла подробная статья о текущем состоянии этой функции: State of the Configuration Cache. Согласно статье, начиная с Gradle 9 Configuration Cache будет включён по умолчанию система станет деликатно напоминать о необходимости включения Configuration Cache. В одном из будущих мажорных релизов после Gradle 9, Configuration Cache станет единственным доступным режимом работы — но только после того, как к этому будет готово всё сообщество. До этого момента Gradle будет активно улучшать технологию и сотрудничать с партнёрами для расширения совместимости и интеграций. #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #8732 · 25.02.2025 г., 17:30

🐘ВышелGradle 8.13 🔥Автоматическая загрузка JVM для Gradle Daemon: теперь Gradle может автоматически загружать необходимую версию JVM для работы Daemon, если подходящая версия не найдена локально. 👉 В Scala-плагине появилась возможность явно задавать версию Scala через расширение scala. 👉Точные временные метки в JUnit XML: временные метки в отчетах JUnit XML теперь имеют миллисекундную точность, что улучшает детализацию отчетов. 🛠 Более 700 мелких исправлений и улучшений Кроме того, добавлены улучшения для авторов сборок и разработчиков плагинов, включая улучшенный доступ к директории настроек в скриптах сборки, новый отчет о преобразовании артефактов, возможность создания пользовательских отчетов о тестировании и новый плагин distribution-base - сборка ZIP или TAR с необходимыми артефактами из проекта #gradle

Hashtags

Android Broadcast

@android_broadcast · Post #9949 · 10.04.2026 г., 16:04

🤖androidx.lint — это Jetpack-библиотека с набором lint-проверок специально для авторов Gradle-плагинов. Если ты пишешь Gradle plugin для Android — она ловит ошибки, которые сложно заметить вручную: 👉 использование внутренних API Gradle и AGP (которые могут сломаться в любой момент) 👉 eager task configuration вместо lazy (withType без configureEach) 👉 вызовы, несовместимые с Gradle Project Isolation (getRootProject, findProject, getParent) 👉Provider<String>.toString() — почти всегда баг 👉configurations.create вместо configurations.register (проблема с Gradle 8.14+) 👉System.getenv() напрямую вместо Provider API 👉mustRunAfter / shouldRunAfter — дорогие операции из-за перестройки task graph Сейчас в alpha06 (апрель 2026), стабильного релиза ещё нет, но и в прод этот код не пойдет. #Gradle#Android

Android Broadcast

@android_broadcast · Post #8897 · 04.04.2025 г., 04:51

📹Android Builds: Simple Recipes to Enhance Developer Productivity (26 мин) Видео с Gradle DPE Summit про основные советы по Gradle для Android разработчиков 00:00 Introduction 00:48 About Toast 03:09 Build Growth Challenges 05:21 Reducing Build Times 06:28 Hardware Solutions 08:08 Gradle Properties 11:36 Memory Management 16:05 Dependency Handling 19:40 CI Optimization 23:35 Agent Configuration 25:38 Conclusion #android#gradle

YuKongA | Channel

@YuKongA13579 · Post #2104 · 09.05.2026 г., 08:25

应该是新的 Android R8 DSL build.gradle.kts: -isMinifyEnabled = true -isShrinkResources = true +optimization.enable = true gradle.properties: +android.r8.gradual.support=true 1、默认包含 proguard-android-optimize.txt,不需要再显式设置 (可以设置 includeDefault 禁用) 2、原 */proguard-rules.pro⁠ 现在移动到 */src/main/keepRules/xxx.keep (文件后缀需为 keep) #gradle#misc

Hashtags

ПретходнаСтраница 1 од 4Следна