{"categories":[{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing/4"}],"enrichment":{"capability":"Provides expressive, fluent API for busy-waiting in tests, allowing you to wait for asynchronous conditions to complete with configurable timeouts and polling.","skillfed_tags":["async-testing","test-utilities"],"use_cases":["Wait for an async database operation to complete in integration tests before asserting on the result.","Poll for a message to appear in a queue or event stream during end-to-end test scenarios.","Verify that a background job has finished and updated application state before proceeding with assertions.","Test event-driven systems where you need to wait for a callback or state change within a timeout.","Replace manual sleep() calls in test code with explicit, readable timeout-and-condition expressions."],"what_it_does":"busypie is a lightweight testing utility that wraps busy-waiting into a readable, fluent API. It's designed specifically for test code where you need to wait for an asynchronous operation or condition to complete\u2014for example, waiting for a user to appear in a database after an async creation call. Instead of writing manual sleep loops or complex synchronization logic, you chain method calls like `wait().at_most(2, SECOND).until(lambda: condition())` to express the intent clearly.\n\nThe package has no runtime dependencies and integrates directly into test suites. It's most useful in integration or end-to-end tests where you're verifying that side effects have occurred, rather than in unit tests. The API is inspired by Awaitility (a Java library) and is intended to make test code more readable and maintainable by encoding the wait-and-check pattern in a standard, expressive form.","worth_installing":"Yes. busypie is a low-friction, zero-dependency testing utility with active maintenance and no known vulnerabilities. It solves a real problem in async test code\u2014replacing ad-hoc sleep loops with readable, expressive waits. Permissive license and modest but stable adoption make it a safe choice for test suites that need polling logic."},"id":"busypie","links":{"html":"https://skillfed.io/packages/busypie","md":"https://skillfed.io/packages/busypie.md","pypi":"https://pypi.org/project/busypie/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-02-07","license_spdx":null,"license_treatment":"permissive","name":"busypie","python_support":"supports_current","summary":"Easy and expressive busy-waiting for Python"},"popularity":{"monthly_downloads":216384,"position":9380,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.6.1"}
