locust 2.47.1.dev37__tar.gz → 2.47.1.dev41__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/PKG-INFO +1 -1
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/_version.py +2 -2
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/dns.py +1 -1
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/fasthttp.py +6 -6
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/mqtt.py +1 -1
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/oai.py +1 -1
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/socketio.py +1 -1
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/.gitignore +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/LICENSE +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/README.md +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/hatch_build.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/__init__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/__main__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/argument_parser.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/clients.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/__init__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/csv_request_logger.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/milvus.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/mongodb.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/postgres.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/contrib/qdrant.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/debug.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/dispatch.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/env.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/event.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/exception.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/html.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/input_events.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/log.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/main.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/opentelemetry.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/py.typed +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/rpc/__init__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/rpc/protocol.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/rpc/zmqrpc.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/runners.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/shape.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/stats.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/__init__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/inspectuser.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/markov_taskset.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/sequential_taskset.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/task.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/users.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/user/wait_time.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/__init__.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/cache.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/date.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/deprecation.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/directory.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/exception_handler.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/load_locustfile.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/rounding.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/timespan.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/util/url.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/web.py +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/favicon-dark.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/favicon-light.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/graphs-dark.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/graphs-light.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/src-Cl6CiemE.js +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/terminal.gif +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/testruns-dark.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/assets/testruns-light.png +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/auth.html +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/index.html +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/locust/webui/dist/report.html +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/pyproject.toml +0 -0
- {locust-2.47.1.dev37 → locust-2.47.1.dev41}/pytest_locust/plugin.py +0 -0
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '2.47.1.
|
|
22
|
-
__version_tuple__ = version_tuple = (2, 47, 1, '
|
|
21
|
+
__version__ = version = '2.47.1.dev41'
|
|
22
|
+
__version_tuple__ = version_tuple = (2, 47, 1, 'dev41')
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -39,7 +39,7 @@ class DNSClient:
|
|
|
39
39
|
self.request_event.fire(**request_meta)
|
|
40
40
|
return response # type: ignore
|
|
41
41
|
|
|
42
|
-
return wrapper # for some reason, pyright still
|
|
42
|
+
return wrapper # for some reason, pyright still won't infer the return type to be Message
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
class DNSUser(User):
|
|
@@ -12,6 +12,7 @@ import socket
|
|
|
12
12
|
import time
|
|
13
13
|
import zlib
|
|
14
14
|
from base64 import b64encode
|
|
15
|
+
from codecs import getincrementaldecoder
|
|
15
16
|
from contextlib import contextmanager
|
|
16
17
|
from http.cookiejar import CookieJar
|
|
17
18
|
from ssl import SSLError
|
|
@@ -335,17 +336,16 @@ class FastHttpSession:
|
|
|
335
336
|
response = self.request(method, url, stream=True, **kwargs)
|
|
336
337
|
response.raise_for_status()
|
|
337
338
|
|
|
339
|
+
decoder = getincrementaldecoder("utf-8")(errors="replace")
|
|
338
340
|
buffer = ""
|
|
339
|
-
for chunk in response.iter_content(chunk_size=1024, decode_content=
|
|
340
|
-
|
|
341
|
-
if isinstance(chunk, bytes):
|
|
342
|
-
chunk = chunk.decode("utf-8", errors="replace")
|
|
343
|
-
|
|
344
|
-
buffer += chunk
|
|
341
|
+
for chunk in response.iter_content(chunk_size=1024, decode_content=False):
|
|
342
|
+
buffer += decoder.decode(chunk)
|
|
345
343
|
while "\n" in buffer:
|
|
346
344
|
line, buffer = buffer.split("\n", 1)
|
|
347
345
|
yield line
|
|
348
346
|
|
|
347
|
+
# Flush a final incomplete character using the same replacement policy.
|
|
348
|
+
buffer += decoder.decode(b"", final=True)
|
|
349
349
|
# Return to the last line that may be incomplete.
|
|
350
350
|
if buffer:
|
|
351
351
|
yield buffer
|
|
@@ -405,7 +405,7 @@ class MqttClient(mqtt.Client):
|
|
|
405
405
|
# Clear sockpairR - only ever a single byte written.
|
|
406
406
|
with suppress(BlockingIOError):
|
|
407
407
|
# Read many bytes at once - this allows up to 10000 calls to
|
|
408
|
-
# publish()
|
|
408
|
+
# publish() in between calls to loop().
|
|
409
409
|
self._sockpairR.recv(10000)
|
|
410
410
|
|
|
411
411
|
if self._sock in socklist[1]:
|
|
@@ -67,7 +67,7 @@ class SocketIOClient(socketio.Client):
|
|
|
67
67
|
This is the default handler for events received.
|
|
68
68
|
You can register separate handlers using self.sio.on(event, handler)
|
|
69
69
|
|
|
70
|
-
Measuring response_time isn't obvious for
|
|
70
|
+
Measuring response_time isn't obvious for WebSockets/SocketIO so we set them to 0.
|
|
71
71
|
Sometimes response time can be inferred from the event data (if it contains a timestamp)
|
|
72
72
|
or related to a message that you sent. Override this method in your User class to do that.
|
|
73
73
|
"""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|