File: control

package info (click to toggle)
python-blockbuster 1.5.25-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 232 kB
  • sloc: python: 881; makefile: 8
file content (56 lines) | stat: -rw-r--r-- 2,322 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Source: python-blockbuster
Section: python
Priority: optional
Maintainer: Debian Python Team <team+python@tracker.debian.org>
Uploaders:
 Colin Watson <cjwatson@debian.org>,
Build-Depends:
 debhelper-compat (= 13),
 dh-sequence-python3,
 pybuild-plugin-pyproject,
 python3-aiofile <!nocheck>,
 python3-all,
 python3-forbiddenfruit,
 python3-hatchling,
 python3-pytest <!nocheck>,
 python3-pytest-asyncio <!nocheck>,
 python3-requests <!nocheck>,
Standards-Version: 4.7.2
Rules-Requires-Root: no
Homepage: https://github.com/cbornet/blockbuster
Vcs-Browser: https://salsa.debian.org/python-team/packages/python-blockbuster
Vcs-Git: https://salsa.debian.org/python-team/packages/python-blockbuster.git
Testsuite: autopkgtest-pkg-pybuild
X-Style: black

Package: python3-blockbuster
Architecture: all
Multi-Arch: foreign
Depends:
 ${misc:Depends},
 ${python3:Depends},
Description: Detect and prevent blocking calls in async event loops
 This Python package detects and prevents 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.