notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photosAll times are UTC
Ukraine

Bot filter coming soon

To deter bots pegging the database CPU to 100%, a bot testing filter to be added to the website. This should not affect newsfeeds etc. Anubis seems light-weight - it is already in use within the FreeBSD Project. This notice is just a heads up in case you see something odd. This notice will be updated after Anubis is installed.

Port details
py-blockbuster Utility to detect blocking calls in the async event loop
1.5.24 develnew! on this many watch lists=0 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout Package not present on quarterly.This port was created during this quarter. It will be in the next quarterly branch but not the current one.
Maintainer: sunpoet@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2025-04-09 14:03:10
Last Update: 2025-04-09 13:53:00
Commit Hash: 832aa57
Also Listed In: python
License: APACHE20
WWW:
https://github.com/cbornet/blockbuster
Description:
Blockbuster is a Python package designed to detect and prevent blocking calls within an asynchronous event loop. It is particularly useful when executing tests to ensure that your asynchronous code does not inadvertently call blocking operations, which can lead to performance bottlenecks and unpredictable behavior. In Python, the asynchronous event loop allows for concurrent execution of tasks without the need for multiple threads or processes. This is achieved by running tasks cooperatively, where tasks yield control back to the event loop when they are waiting for I/O operations or other long-running tasks to complete. However, blocking calls, such as file I/O operations or certain networking operations, can halt the entire event loop, preventing other tasks from running. This can lead to increased latency and reduced performance, defeating the purpose of using asynchronous programming. The difficulty with blocking calls is that they are not always obvious, especially when working with third-party libraries or legacy code. This is where Blockbuster comes in: it helps you identify and eliminate blocking calls in your codebase during testing, ensuring that your asynchronous code runs smoothly and efficiently. It does this by wrapping common blocking functions and raising an exception when they are called within an asynchronous context. Notes: - Blockbuster currently only detects asyncio event loops. - Blockbuster is tested only with CPython. It may work with other Python implementations if it's possible to monkey-patch the functions with setattr.
Homepage    cgit ¦ Codeberg ¦ GitHub ¦ GitLab ¦ SVNWeb - no subversion history for this port

Manual pages:
FreshPorts has no man page information for this port.
pkg-plist: as obtained via: make generate-plist
There is no configure plist information for this port.
Dependency lines:
  • ${PYTHON_PKGNAMEPREFIX}blockbuster>0:devel/py-blockbuster@${PY_FLAVOR}
To install the port:
cd /usr/ports/devel/py-blockbuster/ && make install clean
To add the package, run one of these commands:
  • pkg install devel/py-blockbuster
  • pkg install py311-blockbuster
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.
NOTE: This is a Python port. Instead of py311-blockbuster listed in the above command, you can pick from the names under the Packages section.
PKGNAME: py311-blockbuster
Package flavors (<flavor>: <package>)
  • py311: py311-blockbuster
distinfo:
TIMESTAMP = 1742405432 SHA256 (blockbuster-1.5.24.tar.gz) = 97645775761a5d425666ec0bc99629b65c7eccdc2f770d2439850682567af4ec SIZE (blockbuster-1.5.24.tar.gz) = 51245

Packages (timestamps in pop-ups are UTC):
py311-blockbuster
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest1.5.241.5.24-1.5.241.5.24---
FreeBSD:13:quarterly--------
FreeBSD:14:latest1.5.241.5.24-1.5.241.5.24---
FreeBSD:14:quarterly--------
FreeBSD:15:latest1.5.241.5.24n/a1.5.24n/a---
Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. py311-hatchling>=0 : devel/py-hatchling@py311
  2. python3.11 : lang/python311
  3. py311-build>=0 : devel/py-build@py311
  4. py311-installer>=0 : devel/py-installer@py311
Test dependencies:
  1. python3.11 : lang/python311
Runtime dependencies:
  1. py311-forbiddenfruit>=0.1.4 : devel/py-forbiddenfruit@py311
  2. python3.11 : lang/python311
There are no ports dependent upon this port

Configuration Options:
No options to configure
Options name:
devel_py-blockbuster
USES:
python
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (2 items)
Collapse this list.
  1. https://files.pythonhosted.org/packages/source/b/blockbuster/
  2. https://pypi.org/packages/source/b/blockbuster/
Collapse this list.

Number of commits found: 1

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
1.5.24
09 Apr 2025 13:53:00
commit hash: 832aa5703a6569b49d2137b1f65ab7d9684510b0commit hash: 832aa5703a6569b49d2137b1f65ab7d9684510b0commit hash: 832aa5703a6569b49d2137b1f65ab7d9684510b0commit hash: 832aa5703a6569b49d2137b1f65ab7d9684510b0 files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
devel/py-blockbuster: Add py-blockbuster 1.5.24

Blockbuster is a Python package designed to detect and prevent blocking calls
within an asynchronous event loop. It is particularly useful when executing
tests to ensure that your asynchronous code does not inadvertently call blocking
operations, which can lead to performance bottlenecks and unpredictable
behavior.

In Python, the asynchronous event loop allows for concurrent execution of tasks
without the need for multiple threads or processes. This is achieved by running
tasks cooperatively, where tasks yield control back to the event loop when they
are waiting for I/O operations or other long-running tasks to complete.

However, blocking calls, such as file I/O operations or certain networking
operations, can halt the entire event loop, preventing other tasks from running.
(Only the first 15 lines of the commit message are shown above View all of this commit message)

Number of commits found: 1