locust 2.46.1.dev16__tar.gz → 2.46.2.dev6__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.1.dev16 → locust-2.46.2.dev6}/PKG-INFO +4 -4
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/_version.py +2 -2
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/stats.py +8 -3
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/pyproject.toml +3 -3
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/.gitignore +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/LICENSE +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/README.md +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/hatch_build.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/__init__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/__main__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/argument_parser.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/clients.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/__init__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/csv_request_logger.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/dns.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/fasthttp.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/milvus.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/mongodb.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/mqtt.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/oai.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/postgres.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/qdrant.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/contrib/socketio.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/debug.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/dispatch.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/env.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/event.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/exception.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/html.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/input_events.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/log.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/main.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/opentelemetry.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/py.typed +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/rpc/__init__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/rpc/protocol.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/rpc/zmqrpc.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/runners.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/shape.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/__init__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/inspectuser.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/markov_taskset.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/sequential_taskset.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/task.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/users.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/user/wait_time.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/__init__.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/cache.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/date.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/deprecation.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/directory.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/exception_handler.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/load_locustfile.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/rounding.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/timespan.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/util/url.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/web.py +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/favicon-dark.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/favicon-light.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/graphs-dark.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/graphs-light.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/src-pSlzKFX1.js +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/terminal.gif +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/testruns-dark.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/assets/testruns-light.png +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/auth.html +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/index.html +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/locust/webui/dist/report.html +0 -0
- {locust-2.46.1.dev16 → locust-2.46.2.dev6}/pytest_locust/plugin.py +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: locust
|
|
3
|
-
Version: 2.46.
|
|
3
|
+
Version: 2.46.2.dev6
|
|
4
4
|
Summary: Developer-friendly load testing framework
|
|
5
|
-
Project-URL:
|
|
6
|
-
Project-URL:
|
|
7
|
-
Project-URL:
|
|
5
|
+
Project-URL: Homepage, https://locust.cloud/
|
|
6
|
+
Project-URL: Repository, https://github.com/locustio/locust
|
|
7
|
+
Project-URL: Documentation, https://docs.locust.io/
|
|
8
8
|
Author: Jonatan Heyman, Lars Holmberg
|
|
9
9
|
Maintainer: Lars Holmberg, Jonatan Heyman, Andrew Baldwin
|
|
10
10
|
License: MIT
|
|
@@ -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.
|
|
22
|
-
__version_tuple__ = version_tuple = (2, 46,
|
|
21
|
+
__version__ = version = '2.46.2.dev6'
|
|
22
|
+
__version_tuple__ = version_tuple = (2, 46, 2, 'dev6')
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -113,7 +113,7 @@ response time percentile
|
|
|
113
113
|
"""
|
|
114
114
|
CURRENT_RESPONSE_TIME_PERCENTILE_WINDOW = 10
|
|
115
115
|
|
|
116
|
-
CachedResponseTimes = namedtuple("CachedResponseTimes", ["response_times", "num_requests"])
|
|
116
|
+
CachedResponseTimes = namedtuple("CachedResponseTimes", ["response_times", "num_requests", "num_none_requests"])
|
|
117
117
|
|
|
118
118
|
PERCENTILES_TO_REPORT = [0.50, 0.66, 0.75, 0.80, 0.90, 0.95, 0.98, 0.99, 0.999, 0.9999, 1.0]
|
|
119
119
|
|
|
@@ -604,7 +604,11 @@ class StatsEntry:
|
|
|
604
604
|
|
|
605
605
|
Percent specified in range: 0.0 - 1.0
|
|
606
606
|
"""
|
|
607
|
-
|
|
607
|
+
# response_times only holds non-None samples, so None (async) requests
|
|
608
|
+
# must be excluded from the denominator, just like in avg/median
|
|
609
|
+
return calculate_response_time_percentile(
|
|
610
|
+
self.response_times, self.num_requests - self.num_none_requests, percent
|
|
611
|
+
)
|
|
608
612
|
|
|
609
613
|
def get_current_response_time_percentile(self, percent: float) -> int | None:
|
|
610
614
|
"""
|
|
@@ -644,7 +648,7 @@ class StatsEntry:
|
|
|
644
648
|
# for that timeframe
|
|
645
649
|
return calculate_response_time_percentile(
|
|
646
650
|
diff_response_time_dicts(self.response_times, cached.response_times),
|
|
647
|
-
self.num_requests - cached.num_requests,
|
|
651
|
+
(self.num_requests - self.num_none_requests) - (cached.num_requests - cached.num_none_requests),
|
|
648
652
|
percent,
|
|
649
653
|
)
|
|
650
654
|
# if time was not in response times cache window
|
|
@@ -669,6 +673,7 @@ class StatsEntry:
|
|
|
669
673
|
self.response_times_cache[t] = CachedResponseTimes(
|
|
670
674
|
response_times=copy(self.response_times),
|
|
671
675
|
num_requests=self.num_requests,
|
|
676
|
+
num_none_requests=self.num_none_requests,
|
|
672
677
|
)
|
|
673
678
|
|
|
674
679
|
# We'll use a cache size of CURRENT_RESPONSE_TIME_PERCENTILE_WINDOW + 10 since - in the extreme case -
|
|
@@ -65,9 +65,9 @@ otel = [
|
|
|
65
65
|
qdrant = ["qdrant-client>=1.16.2"]
|
|
66
66
|
|
|
67
67
|
[project.urls]
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
Homepage = "https://locust.cloud/"
|
|
69
|
+
Repository = "https://github.com/locustio/locust"
|
|
70
|
+
Documentation = "https://docs.locust.io/"
|
|
71
71
|
|
|
72
72
|
[tool.uv]
|
|
73
73
|
default-groups = ["build", "test", "lint"]
|
|
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
|