locust 2.46.2.dev6__tar.gz → 2.46.2.dev10__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.46.2.dev6 → locust-2.46.2.dev10}/PKG-INFO +1 -1
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/_version.py +2 -2
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/stats.py +6 -6
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/.gitignore +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/LICENSE +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/README.md +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/hatch_build.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/__init__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/__main__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/argument_parser.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/clients.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/__init__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/csv_request_logger.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/dns.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/fasthttp.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/milvus.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/mongodb.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/mqtt.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/oai.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/postgres.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/qdrant.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/contrib/socketio.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/debug.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/dispatch.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/env.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/event.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/exception.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/html.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/input_events.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/log.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/main.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/opentelemetry.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/py.typed +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/rpc/__init__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/rpc/protocol.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/rpc/zmqrpc.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/runners.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/shape.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/__init__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/inspectuser.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/markov_taskset.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/sequential_taskset.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/task.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/users.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/user/wait_time.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/__init__.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/cache.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/date.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/deprecation.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/directory.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/exception_handler.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/load_locustfile.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/rounding.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/timespan.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/util/url.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/web.py +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/favicon-dark.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/favicon-light.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/graphs-dark.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/graphs-light.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/src-pSlzKFX1.js +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/terminal.gif +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/testruns-dark.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/assets/testruns-light.png +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/auth.html +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/index.html +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/locust/webui/dist/report.html +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/pyproject.toml +0 -0
- {locust-2.46.2.dev6 → locust-2.46.2.dev10}/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.46.2.
|
|
22
|
-
__version_tuple__ = version_tuple = (2, 46, 2, '
|
|
21
|
+
__version__ = version = '2.46.2.dev10'
|
|
22
|
+
__version_tuple__ = version_tuple = (2, 46, 2, 'dev10')
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -298,7 +298,7 @@ class StatsEntry:
|
|
|
298
298
|
Represents a single stats entry (name and method)
|
|
299
299
|
"""
|
|
300
300
|
|
|
301
|
-
def __init__(self, stats: RequestStats
|
|
301
|
+
def __init__(self, stats: RequestStats, name: str, method: str, use_response_times_cache: bool = False):
|
|
302
302
|
self.stats = stats
|
|
303
303
|
self.name = name
|
|
304
304
|
""" Name (URL) of this stats entry """
|
|
@@ -450,7 +450,7 @@ class StatsEntry:
|
|
|
450
450
|
|
|
451
451
|
@property
|
|
452
452
|
def current_rps(self) -> float:
|
|
453
|
-
if self.stats
|
|
453
|
+
if self.stats.last_request_timestamp is None:
|
|
454
454
|
return 0
|
|
455
455
|
slice_start_time = max(int(self.stats.last_request_timestamp) - 12, int(self.stats.start_time or 0))
|
|
456
456
|
|
|
@@ -543,9 +543,9 @@ class StatsEntry:
|
|
|
543
543
|
return cast(StatsEntryDict, {key: getattr(self, key, None) for key in StatsEntryDict.__annotations__.keys()})
|
|
544
544
|
|
|
545
545
|
@classmethod
|
|
546
|
-
def unserialize(cls, data: StatsEntryDict) -> StatsEntry:
|
|
546
|
+
def unserialize(cls, data: StatsEntryDict, stats: RequestStats) -> StatsEntry:
|
|
547
547
|
"""Return the unserialzed version of the specified dict"""
|
|
548
|
-
obj = cls(
|
|
548
|
+
obj = cls(stats, data["name"], data["method"])
|
|
549
549
|
valid_keys = StatsEntryDict.__annotations__.keys()
|
|
550
550
|
|
|
551
551
|
for key, value in data.items():
|
|
@@ -835,7 +835,7 @@ def setup_distributed_stats_event_listeners(events: Events, stats: RequestStats)
|
|
|
835
835
|
|
|
836
836
|
def on_worker_report(client_id: str, data: dict[str, Any]) -> None:
|
|
837
837
|
for stats_data in data["stats"]:
|
|
838
|
-
entry = StatsEntry.unserialize(stats_data)
|
|
838
|
+
entry = StatsEntry.unserialize(stats_data, stats)
|
|
839
839
|
request_key = (entry.name, entry.method)
|
|
840
840
|
if request_key not in stats.entries:
|
|
841
841
|
stats.entries[request_key] = StatsEntry(stats, entry.name, entry.method, use_response_times_cache=True)
|
|
@@ -856,7 +856,7 @@ def setup_distributed_stats_event_listeners(events: Events, stats: RequestStats)
|
|
|
856
856
|
incoming_last if existing.last_seen is None else max(existing.last_seen, incoming_last)
|
|
857
857
|
)
|
|
858
858
|
|
|
859
|
-
stats.total.extend(StatsEntry.unserialize(data["stats_total"]))
|
|
859
|
+
stats.total.extend(StatsEntry.unserialize(data["stats_total"], stats))
|
|
860
860
|
|
|
861
861
|
events.report_to_master.add_listener(on_report_to_master)
|
|
862
862
|
events.worker_report.add_listener(on_worker_report)
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|