locust 2.29.2.dev32__tar.gz → 2.29.2.dev42__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.
Files changed (331) hide show
  1. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/PKG-INFO +31 -26
  2. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/README.md +1 -0
  3. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/_version.py +6 -2
  4. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/contrib/fasthttp.py +1 -1
  5. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/dispatch.py +7 -6
  6. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/stats.py +4 -17
  7. locust-2.29.2.dev42/pre_build.py +14 -0
  8. locust-2.29.2.dev42/pyproject.toml +209 -0
  9. locust-2.29.2.dev32/.coveragerc +0 -19
  10. locust-2.29.2.dev32/.dockerignore +0 -8
  11. locust-2.29.2.dev32/.git-blame-ignore-revs +0 -15
  12. locust-2.29.2.dev32/.gitattributes +0 -20
  13. locust-2.29.2.dev32/.github/CONTRIBUTING.md +0 -10
  14. locust-2.29.2.dev32/.github/ISSUE_TEMPLATE/bug.yml +0 -63
  15. locust-2.29.2.dev32/.github/ISSUE_TEMPLATE/config.yml +0 -1
  16. locust-2.29.2.dev32/.github/ISSUE_TEMPLATE/feature_request.yml +0 -29
  17. locust-2.29.2.dev32/.github/workflows/stale.yml +0 -26
  18. locust-2.29.2.dev32/.github/workflows/tests.yml +0 -197
  19. locust-2.29.2.dev32/.gitignore +0 -32
  20. locust-2.29.2.dev32/.pre-commit-config.yaml +0 -10
  21. locust-2.29.2.dev32/.readthedocs.yaml +0 -16
  22. locust-2.29.2.dev32/.vscode/extensions.json +0 -6
  23. locust-2.29.2.dev32/.vscode/launch.json +0 -27
  24. locust-2.29.2.dev32/.vscode/launch_locust.json +0 -20
  25. locust-2.29.2.dev32/.vscode/settings.json +0 -48
  26. locust-2.29.2.dev32/CHANGELOG.md +0 -1700
  27. locust-2.29.2.dev32/Dockerfile +0 -33
  28. locust-2.29.2.dev32/MANIFEST.in +0 -3
  29. locust-2.29.2.dev32/Makefile +0 -23
  30. locust-2.29.2.dev32/SECURITY.md +0 -19
  31. locust-2.29.2.dev32/Vagrantfile +0 -5
  32. locust-2.29.2.dev32/benchmarks/dispatch.py +0 -230
  33. locust-2.29.2.dev32/docs/_static/theme-overrides.css +0 -9
  34. locust-2.29.2.dev32/docs/api.rst +0 -161
  35. locust-2.29.2.dev32/docs/changelog.rst +0 -1260
  36. locust-2.29.2.dev32/docs/conf.py +0 -168
  37. locust-2.29.2.dev32/docs/configuration.rst +0 -285
  38. locust-2.29.2.dev32/docs/custom-load-shape.rst +0 -120
  39. locust-2.29.2.dev32/docs/developing-locust.rst +0 -167
  40. locust-2.29.2.dev32/docs/extending-locust.rst +0 -240
  41. locust-2.29.2.dev32/docs/extensions.rst +0 -41
  42. locust-2.29.2.dev32/docs/faq.rst +0 -107
  43. locust-2.29.2.dev32/docs/further-reading.rst +0 -23
  44. locust-2.29.2.dev32/docs/history.rst +0 -29
  45. locust-2.29.2.dev32/docs/images/extend_modern_web_ui_cache_stats.png +0 -0
  46. locust-2.29.2.dev32/docs/images/locust_workers.png +0 -0
  47. locust-2.29.2.dev32/docs/images/number_of_users.png +0 -0
  48. locust-2.29.2.dev32/docs/images/response_times.png +0 -0
  49. locust-2.29.2.dev32/docs/images/total_requests_per_second.png +0 -0
  50. locust-2.29.2.dev32/docs/images/userclass_picker_example.png +0 -0
  51. locust-2.29.2.dev32/docs/images/webui-running-statistics.png +0 -0
  52. locust-2.29.2.dev32/docs/images/webui-splash-screenshot.png +0 -0
  53. locust-2.29.2.dev32/docs/increase-performance.rst +0 -124
  54. locust-2.29.2.dev32/docs/increasing-request-rate.rst +0 -28
  55. locust-2.29.2.dev32/docs/index.rst +0 -82
  56. locust-2.29.2.dev32/docs/installation.rst +0 -103
  57. locust-2.29.2.dev32/docs/logging.rst +0 -60
  58. locust-2.29.2.dev32/docs/quickstart.rst +0 -97
  59. locust-2.29.2.dev32/docs/requirements.txt +0 -17
  60. locust-2.29.2.dev32/docs/retrieving-stats.rst +0 -29
  61. locust-2.29.2.dev32/docs/running-distributed.rst +0 -167
  62. locust-2.29.2.dev32/docs/running-in-debugger.rst +0 -107
  63. locust-2.29.2.dev32/docs/running-in-docker.rst +0 -41
  64. locust-2.29.2.dev32/docs/running-without-web-ui.rst +0 -97
  65. locust-2.29.2.dev32/docs/tasksets.rst +0 -177
  66. locust-2.29.2.dev32/docs/testing-other-systems.rst +0 -64
  67. locust-2.29.2.dev32/docs/use-as-lib.rst +0 -61
  68. locust-2.29.2.dev32/docs/what-is-locust.rst +0 -72
  69. locust-2.29.2.dev32/docs/writing-a-locustfile.rst +0 -696
  70. locust-2.29.2.dev32/examples/add_command_line_argument.py +0 -24
  71. locust-2.29.2.dev32/examples/basic.py +0 -29
  72. locust-2.29.2.dev32/examples/browse_docs_sequence_test.py +0 -47
  73. locust-2.29.2.dev32/examples/browse_docs_test.py +0 -46
  74. locust-2.29.2.dev32/examples/custom_messages.py +0 -70
  75. locust-2.29.2.dev32/examples/custom_shape/double_wave.py +0 -48
  76. locust-2.29.2.dev32/examples/custom_shape/stages.py +0 -48
  77. locust-2.29.2.dev32/examples/custom_shape/staging_user_classes.py +0 -57
  78. locust-2.29.2.dev32/examples/custom_shape/step_load.py +0 -43
  79. locust-2.29.2.dev32/examples/custom_shape/wait_user_count.py +0 -73
  80. locust-2.29.2.dev32/examples/custom_wait_function.py +0 -56
  81. locust-2.29.2.dev32/examples/custom_xmlrpc_client/server.py +0 -20
  82. locust-2.29.2.dev32/examples/custom_xmlrpc_client/xmlrpc_locustfile.py +0 -66
  83. locust-2.29.2.dev32/examples/debugging.py +0 -15
  84. locust-2.29.2.dev32/examples/debugging_advanced.py +0 -30
  85. locust-2.29.2.dev32/examples/dispatch_test_scripts/locustfile.py +0 -80
  86. locust-2.29.2.dev32/examples/dispatch_test_scripts/run-disributed-headless.sh +0 -58
  87. locust-2.29.2.dev32/examples/dispatch_test_scripts/run-disributed-web.sh +0 -57
  88. locust-2.29.2.dev32/examples/dispatch_test_scripts/run-local-headless.sh +0 -20
  89. locust-2.29.2.dev32/examples/dispatch_test_scripts/run-local-web.sh +0 -19
  90. locust-2.29.2.dev32/examples/docker-compose/docker-compose.yml +0 -16
  91. locust-2.29.2.dev32/examples/dynamic_user_credentials.py +0 -26
  92. locust-2.29.2.dev32/examples/events.py +0 -73
  93. locust-2.29.2.dev32/examples/extend_web_ui.py +0 -163
  94. locust-2.29.2.dev32/examples/fast_http_locust.py +0 -26
  95. locust-2.29.2.dev32/examples/grpc/grpc_user.py +0 -63
  96. locust-2.29.2.dev32/examples/grpc/hello.proto +0 -15
  97. locust-2.29.2.dev32/examples/grpc/hello_pb2.py +0 -159
  98. locust-2.29.2.dev32/examples/grpc/hello_pb2_grpc.py +0 -77
  99. locust-2.29.2.dev32/examples/grpc/hello_server.py +0 -29
  100. locust-2.29.2.dev32/examples/grpc/locustfile.py +0 -22
  101. locust-2.29.2.dev32/examples/locustfile.py +0 -21
  102. locust-2.29.2.dev32/examples/manual_stats_reporting.py +0 -78
  103. locust-2.29.2.dev32/examples/multiple_hosts.py +0 -35
  104. locust-2.29.2.dev32/examples/nested_inline_tasksets.py +0 -26
  105. locust-2.29.2.dev32/examples/rest.py +0 -99
  106. locust-2.29.2.dev32/examples/sdk_session_patching/session_patch_locustfile.py +0 -24
  107. locust-2.29.2.dev32/examples/semaphore_wait.py +0 -22
  108. locust-2.29.2.dev32/examples/stop_on_threshold.py +0 -35
  109. locust-2.29.2.dev32/examples/terraform/aws/README.md +0 -94
  110. locust-2.29.2.dev32/examples/terraform/aws/data_subnet.tf +0 -6
  111. locust-2.29.2.dev32/examples/terraform/aws/main.tf +0 -32
  112. locust-2.29.2.dev32/examples/terraform/aws/output.tf +0 -24
  113. locust-2.29.2.dev32/examples/terraform/aws/plan/basic.py +0 -22
  114. locust-2.29.2.dev32/examples/terraform/aws/provisioner.tf +0 -3
  115. locust-2.29.2.dev32/examples/terraform/aws/variables.tf +0 -29
  116. locust-2.29.2.dev32/examples/test_data_management.py +0 -144
  117. locust-2.29.2.dev32/examples/use_as_lib.py +0 -46
  118. locust-2.29.2.dev32/examples/vagrant/README.md +0 -0
  119. locust-2.29.2.dev32/examples/vagrant/supervisord.conf +0 -36
  120. locust-2.29.2.dev32/examples/web_ui_auth.py +0 -83
  121. locust-2.29.2.dev32/examples/web_ui_cache_stats.py +0 -210
  122. locust-2.29.2.dev32/examples/worker_index.py +0 -20
  123. locust-2.29.2.dev32/generate_changelog.py +0 -37
  124. locust-2.29.2.dev32/locust/test/__init__.py +0 -15
  125. locust-2.29.2.dev32/locust/test/fake_module1_for_env_test.py +0 -7
  126. locust-2.29.2.dev32/locust/test/fake_module2_for_env_test.py +0 -7
  127. locust-2.29.2.dev32/locust/test/mock_locustfile.py +0 -56
  128. locust-2.29.2.dev32/locust/test/mock_logging.py +0 -28
  129. locust-2.29.2.dev32/locust/test/test_debugging.py +0 -39
  130. locust-2.29.2.dev32/locust/test/test_dispatch.py +0 -4170
  131. locust-2.29.2.dev32/locust/test/test_env.py +0 -283
  132. locust-2.29.2.dev32/locust/test/test_fasthttp.py +0 -785
  133. locust-2.29.2.dev32/locust/test/test_http.py +0 -325
  134. locust-2.29.2.dev32/locust/test/test_interruptable_task.py +0 -48
  135. locust-2.29.2.dev32/locust/test/test_load_locustfile.py +0 -228
  136. locust-2.29.2.dev32/locust/test/test_locust_class.py +0 -831
  137. locust-2.29.2.dev32/locust/test/test_log.py +0 -237
  138. locust-2.29.2.dev32/locust/test/test_main.py +0 -2264
  139. locust-2.29.2.dev32/locust/test/test_old_wait_api.py +0 -0
  140. locust-2.29.2.dev32/locust/test/test_parser.py +0 -450
  141. locust-2.29.2.dev32/locust/test/test_runners.py +0 -4476
  142. locust-2.29.2.dev32/locust/test/test_sequential_taskset.py +0 -157
  143. locust-2.29.2.dev32/locust/test/test_stats.py +0 -866
  144. locust-2.29.2.dev32/locust/test/test_tags.py +0 -440
  145. locust-2.29.2.dev32/locust/test/test_taskratio.py +0 -94
  146. locust-2.29.2.dev32/locust/test/test_users.py +0 -69
  147. locust-2.29.2.dev32/locust/test/test_util.py +0 -33
  148. locust-2.29.2.dev32/locust/test/test_wait_time.py +0 -79
  149. locust-2.29.2.dev32/locust/test/test_web.py +0 -1257
  150. locust-2.29.2.dev32/locust/test/test_zmqrpc.py +0 -58
  151. locust-2.29.2.dev32/locust/test/testcases.py +0 -248
  152. locust-2.29.2.dev32/locust/test/util.py +0 -88
  153. locust-2.29.2.dev32/locust/webui/.eslintrc +0 -41
  154. locust-2.29.2.dev32/locust/webui/.gitignore +0 -3
  155. locust-2.29.2.dev32/locust/webui/.prettierrc +0 -9
  156. locust-2.29.2.dev32/locust/webui/auth.html +0 -19
  157. locust-2.29.2.dev32/locust/webui/dev.html +0 -39
  158. locust-2.29.2.dev32/locust/webui/dist/assets/favicon.ico +0 -0
  159. locust-2.29.2.dev32/locust/webui/dist/assets/logo.png +0 -0
  160. locust-2.29.2.dev32/locust/webui/dist/auth.html +0 -20
  161. locust-2.29.2.dev32/locust/webui/dist/index.html +0 -20
  162. locust-2.29.2.dev32/locust/webui/dist/report.html +0 -23
  163. locust-2.29.2.dev32/locust/webui/index.html +0 -19
  164. locust-2.29.2.dev32/locust/webui/package.json +0 -55
  165. locust-2.29.2.dev32/locust/webui/public/assets/favicon.ico +0 -0
  166. locust-2.29.2.dev32/locust/webui/public/assets/logo.png +0 -0
  167. locust-2.29.2.dev32/locust/webui/public/report.html +0 -23
  168. locust-2.29.2.dev32/locust/webui/src/App.test.tsx +0 -35
  169. locust-2.29.2.dev32/locust/webui/src/App.tsx +0 -32
  170. locust-2.29.2.dev32/locust/webui/src/components/DataTable/DataTable.test.tsx +0 -42
  171. locust-2.29.2.dev32/locust/webui/src/components/DataTable/DataTable.tsx +0 -44
  172. locust-2.29.2.dev32/locust/webui/src/components/ExceptionsTable/ExceptionsTable.tsx +0 -19
  173. locust-2.29.2.dev32/locust/webui/src/components/FailuresTable/FailuresTable.tsx +0 -20
  174. locust-2.29.2.dev32/locust/webui/src/components/FallbackRender/FallbackRender.test.tsx +0 -37
  175. locust-2.29.2.dev32/locust/webui/src/components/FallbackRender/FallbackRender.tsx +0 -12
  176. locust-2.29.2.dev32/locust/webui/src/components/Form/Form.tsx +0 -57
  177. locust-2.29.2.dev32/locust/webui/src/components/Form/Select.tsx +0 -41
  178. locust-2.29.2.dev32/locust/webui/src/components/Form/tests/Form.test.tsx +0 -98
  179. locust-2.29.2.dev32/locust/webui/src/components/Form/tests/Select.test.tsx +0 -63
  180. locust-2.29.2.dev32/locust/webui/src/components/Layout/Footer/About.tsx +0 -63
  181. locust-2.29.2.dev32/locust/webui/src/components/Layout/Footer/Footer.tsx +0 -19
  182. locust-2.29.2.dev32/locust/webui/src/components/Layout/Layout.tsx +0 -21
  183. locust-2.29.2.dev32/locust/webui/src/components/Layout/Navbar/DarkLightToggle.tsx +0 -30
  184. locust-2.29.2.dev32/locust/webui/src/components/Layout/Navbar/Navbar.tsx +0 -41
  185. locust-2.29.2.dev32/locust/webui/src/components/Layout/Navbar/SwarmMonitor.test.tsx +0 -71
  186. locust-2.29.2.dev32/locust/webui/src/components/Layout/Navbar/SwarmMonitor.tsx +0 -78
  187. locust-2.29.2.dev32/locust/webui/src/components/LineChart/LineChart.test.tsx +0 -30
  188. locust-2.29.2.dev32/locust/webui/src/components/LineChart/LineChart.tsx +0 -274
  189. locust-2.29.2.dev32/locust/webui/src/components/LogViewer/LogViewer.tsx +0 -95
  190. locust-2.29.2.dev32/locust/webui/src/components/LogViewer/logUtils.tsx +0 -2
  191. locust-2.29.2.dev32/locust/webui/src/components/LogViewer/tests/LogViewer.test.tsx +0 -55
  192. locust-2.29.2.dev32/locust/webui/src/components/LogViewer/tests/useLogViewer.test.tsx +0 -41
  193. locust-2.29.2.dev32/locust/webui/src/components/LogViewer/useLogViewer.ts +0 -41
  194. locust-2.29.2.dev32/locust/webui/src/components/Modal/Modal.tsx +0 -43
  195. locust-2.29.2.dev32/locust/webui/src/components/Reports/Reports.test.tsx +0 -97
  196. locust-2.29.2.dev32/locust/webui/src/components/Reports/Reports.tsx +0 -56
  197. locust-2.29.2.dev32/locust/webui/src/components/ResponseTimeTable/ResponseTimeTable.test.tsx +0 -35
  198. locust-2.29.2.dev32/locust/webui/src/components/ResponseTimeTable/ResponseTimeTable.tsx +0 -27
  199. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/EditButton.tsx +0 -20
  200. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/NewTestButton.tsx +0 -20
  201. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/ResetButton.tsx +0 -13
  202. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/StateButtons.tsx +0 -30
  203. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/StopButton.tsx +0 -27
  204. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/tests/ResetButton.test.tsx +0 -28
  205. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/tests/StateButtons.test.tsx +0 -56
  206. locust-2.29.2.dev32/locust/webui/src/components/StateButtons/tests/StopButton.test.tsx +0 -32
  207. locust-2.29.2.dev32/locust/webui/src/components/StatsTable/StatsTable.tsx +0 -51
  208. locust-2.29.2.dev32/locust/webui/src/components/SwarmCharts/SwarmCharts.tsx +0 -56
  209. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/SwarmCustomParameters.tsx +0 -77
  210. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/SwarmEditForm.tsx +0 -56
  211. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/SwarmForm.tsx +0 -185
  212. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/SwarmUserClassPicker.tsx +0 -216
  213. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/tests/SwarmCustomParameters.test.tsx +0 -278
  214. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/tests/SwarmEditForm.test.tsx +0 -52
  215. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/tests/SwarmForm.test.tsx +0 -246
  216. locust-2.29.2.dev32/locust/webui/src/components/SwarmForm/tests/SwarmUserClassPicker.test.tsx +0 -174
  217. locust-2.29.2.dev32/locust/webui/src/components/SwarmRatios/SwarmRatios.test.tsx +0 -86
  218. locust-2.29.2.dev32/locust/webui/src/components/SwarmRatios/SwarmRatios.tsx +0 -52
  219. locust-2.29.2.dev32/locust/webui/src/components/Table/Table.test.tsx +0 -92
  220. locust-2.29.2.dev32/locust/webui/src/components/Table/Table.tsx +0 -110
  221. locust-2.29.2.dev32/locust/webui/src/components/Tabs/Tabs.constants.tsx +0 -57
  222. locust-2.29.2.dev32/locust/webui/src/components/Tabs/Tabs.test.tsx +0 -63
  223. locust-2.29.2.dev32/locust/webui/src/components/Tabs/Tabs.tsx +0 -97
  224. locust-2.29.2.dev32/locust/webui/src/components/ViewColumnSelector/ViewColumnSelector.test.tsx +0 -57
  225. locust-2.29.2.dev32/locust/webui/src/components/ViewColumnSelector/ViewColumnSelector.tsx +0 -61
  226. locust-2.29.2.dev32/locust/webui/src/components/WorkersTable/WorkersTable.tsx +0 -22
  227. locust-2.29.2.dev32/locust/webui/src/constants/auth.ts +0 -4
  228. locust-2.29.2.dev32/locust/webui/src/constants/logs.ts +0 -1
  229. locust-2.29.2.dev32/locust/webui/src/constants/swarm.ts +0 -29
  230. locust-2.29.2.dev32/locust/webui/src/constants/theme.ts +0 -12
  231. locust-2.29.2.dev32/locust/webui/src/global.d.ts +0 -13
  232. locust-2.29.2.dev32/locust/webui/src/hooks/tests/useNotifications.test.tsx +0 -135
  233. locust-2.29.2.dev32/locust/webui/src/hooks/tests/useSelecteViewColumns.test.tsx +0 -59
  234. locust-2.29.2.dev32/locust/webui/src/hooks/tests/useSortByField.test.tsx +0 -130
  235. locust-2.29.2.dev32/locust/webui/src/hooks/tests/useSwarmUi.test.tsx +0 -83
  236. locust-2.29.2.dev32/locust/webui/src/hooks/useInterval.ts +0 -25
  237. locust-2.29.2.dev32/locust/webui/src/hooks/useNotifications.ts +0 -33
  238. locust-2.29.2.dev32/locust/webui/src/hooks/useSelectViewColumns.ts +0 -28
  239. locust-2.29.2.dev32/locust/webui/src/hooks/useSortByField.ts +0 -88
  240. locust-2.29.2.dev32/locust/webui/src/hooks/useSwarmUi.ts +0 -130
  241. locust-2.29.2.dev32/locust/webui/src/index.tsx +0 -13
  242. locust-2.29.2.dev32/locust/webui/src/pages/Auth.tsx +0 -98
  243. locust-2.29.2.dev32/locust/webui/src/pages/Dashboard.tsx +0 -45
  244. locust-2.29.2.dev32/locust/webui/src/pages/HtmlReport.tsx +0 -116
  245. locust-2.29.2.dev32/locust/webui/src/pages/tests/Auth.test.tsx +0 -68
  246. locust-2.29.2.dev32/locust/webui/src/pages/tests/Dashboard.test.tsx +0 -36
  247. locust-2.29.2.dev32/locust/webui/src/pages/tests/HtmlReport.test.tsx +0 -55
  248. locust-2.29.2.dev32/locust/webui/src/redux/api/swarm.ts +0 -57
  249. locust-2.29.2.dev32/locust/webui/src/redux/hooks.ts +0 -23
  250. locust-2.29.2.dev32/locust/webui/src/redux/slice/logViewer.slice.ts +0 -24
  251. locust-2.29.2.dev32/locust/webui/src/redux/slice/notification.slice.ts +0 -22
  252. locust-2.29.2.dev32/locust/webui/src/redux/slice/root.slice.ts +0 -42
  253. locust-2.29.2.dev32/locust/webui/src/redux/slice/swarm.slice.ts +0 -51
  254. locust-2.29.2.dev32/locust/webui/src/redux/slice/tests/ui.slice.test.ts +0 -113
  255. locust-2.29.2.dev32/locust/webui/src/redux/slice/theme.slice.ts +0 -24
  256. locust-2.29.2.dev32/locust/webui/src/redux/slice/ui.slice.ts +0 -85
  257. locust-2.29.2.dev32/locust/webui/src/redux/slice/url.slice.ts +0 -25
  258. locust-2.29.2.dev32/locust/webui/src/redux/store.ts +0 -12
  259. locust-2.29.2.dev32/locust/webui/src/redux/utils.ts +0 -9
  260. locust-2.29.2.dev32/locust/webui/src/styles/theme.ts +0 -25
  261. locust-2.29.2.dev32/locust/webui/src/test/constants.ts +0 -1
  262. locust-2.29.2.dev32/locust/webui/src/test/mocks/statsRequest.mock.ts +0 -174
  263. locust-2.29.2.dev32/locust/webui/src/test/mocks/swarmState.mock.ts +0 -52
  264. locust-2.29.2.dev32/locust/webui/src/test/setup.ts +0 -37
  265. locust-2.29.2.dev32/locust/webui/src/test/testUtils.tsx +0 -24
  266. locust-2.29.2.dev32/locust/webui/src/types/auth.types.ts +0 -11
  267. locust-2.29.2.dev32/locust/webui/src/types/swarm.types.ts +0 -58
  268. locust-2.29.2.dev32/locust/webui/src/types/tab.types.ts +0 -8
  269. locust-2.29.2.dev32/locust/webui/src/types/table.types.ts +0 -6
  270. locust-2.29.2.dev32/locust/webui/src/types/ui.types.ts +0 -110
  271. locust-2.29.2.dev32/locust/webui/src/utils/array.ts +0 -5
  272. locust-2.29.2.dev32/locust/webui/src/utils/date.ts +0 -5
  273. locust-2.29.2.dev32/locust/webui/src/utils/number.ts +0 -4
  274. locust-2.29.2.dev32/locust/webui/src/utils/object.ts +0 -40
  275. locust-2.29.2.dev32/locust/webui/src/utils/string.ts +0 -63
  276. locust-2.29.2.dev32/locust/webui/src/utils/tests/number.test.ts +0 -13
  277. locust-2.29.2.dev32/locust/webui/src/utils/tests/object.test.ts +0 -142
  278. locust-2.29.2.dev32/locust/webui/src/utils/tests/string.test.ts +0 -249
  279. locust-2.29.2.dev32/locust/webui/src/utils/tests/url.test.ts +0 -44
  280. locust-2.29.2.dev32/locust/webui/src/utils/url.ts +0 -14
  281. locust-2.29.2.dev32/locust/webui/tsconfig.json +0 -27
  282. locust-2.29.2.dev32/locust/webui/vite.config.ts +0 -39
  283. locust-2.29.2.dev32/locust/webui/vitest.config.ts +0 -16
  284. locust-2.29.2.dev32/locust/webui/yarn.lock +0 -4913
  285. locust-2.29.2.dev32/locust.egg-info/PKG-INFO +0 -126
  286. locust-2.29.2.dev32/locust.egg-info/SOURCES.txt +0 -327
  287. locust-2.29.2.dev32/locust.egg-info/dependency_links.txt +0 -1
  288. locust-2.29.2.dev32/locust.egg-info/entry_points.txt +0 -2
  289. locust-2.29.2.dev32/locust.egg-info/not-zip-safe +0 -1
  290. locust-2.29.2.dev32/locust.egg-info/requires.txt +0 -21
  291. locust-2.29.2.dev32/locust.egg-info/top_level.txt +0 -1
  292. locust-2.29.2.dev32/package.json +0 -16
  293. locust-2.29.2.dev32/pyproject.toml +0 -115
  294. locust-2.29.2.dev32/setup.cfg +0 -4
  295. locust-2.29.2.dev32/tox.ini +0 -45
  296. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/LICENSE +0 -0
  297. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/__init__.py +0 -0
  298. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/__main__.py +0 -0
  299. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/argument_parser.py +0 -0
  300. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/clients.py +0 -0
  301. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/contrib/__init__.py +0 -0
  302. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/debug.py +0 -0
  303. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/env.py +0 -0
  304. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/event.py +0 -0
  305. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/exception.py +0 -0
  306. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/html.py +0 -0
  307. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/input_events.py +0 -0
  308. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/log.py +0 -0
  309. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/main.py +0 -0
  310. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/py.typed +0 -0
  311. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/rpc/__init__.py +0 -0
  312. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/rpc/protocol.py +0 -0
  313. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/rpc/zmqrpc.py +0 -0
  314. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/runners.py +0 -0
  315. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/shape.py +0 -0
  316. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/__init__.py +0 -0
  317. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/inspectuser.py +0 -0
  318. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/sequential_taskset.py +0 -0
  319. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/task.py +0 -0
  320. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/users.py +0 -0
  321. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/user/wait_time.py +0 -0
  322. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/__init__.py +0 -0
  323. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/cache.py +0 -0
  324. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/date.py +0 -0
  325. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/deprecation.py +0 -0
  326. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/exception_handler.py +0 -0
  327. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/load_locustfile.py +0 -0
  328. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/rounding.py +0 -0
  329. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/util/timespan.py +0 -0
  330. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/web.py +0 -0
  331. {locust-2.29.2.dev32 → locust-2.29.2.dev42}/locust/webui/dist/assets/index-e9ad42b4.js +0 -0
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: locust
3
- Version: 2.29.2.dev32
3
+ Version: 2.29.2.dev42
4
4
  Summary: Developer-friendly load testing framework
5
+ Home-page: https://locust.io/
5
6
  License: MIT
6
- Project-URL: Homepage, https://github.com/locustio/locust
7
- Project-URL: Documentation, https://docs.locust.io/
8
- Project-URL: Code, https://github.com/locustio/locust
9
- Project-URL: Help/Questions, https://stackoverflow.com/questions/tagged/locust
10
- Project-URL: Issue tracker, https://github.com/locustio/locust/issues
11
- Classifier: Topic :: Software Development :: Testing :: Traffic Generation
7
+ Author: Jonatan Heyman
8
+ Maintainer: Lars Holmberg
9
+ Requires-Python: >=3.9
12
10
  Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: Intended Audience :: System Administrators
13
13
  Classifier: License :: OSI Approved :: MIT License
14
14
  Classifier: Operating System :: OS Independent
15
15
  Classifier: Programming Language :: Python
@@ -18,29 +18,32 @@ Classifier: Programming Language :: Python :: 3.9
18
18
  Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
- Classifier: Intended Audience :: Developers
22
- Classifier: Intended Audience :: System Administrators
23
21
  Classifier: Topic :: Software Development :: Testing
24
22
  Classifier: Topic :: Software Development :: Testing :: Traffic Generation
25
23
  Classifier: Topic :: System :: Distributed Computing
26
- Requires-Python: >=3.9
24
+ Requires-Dist: ConfigArgParse (>=1.5.5)
25
+ Requires-Dist: Flask-Cors (>=3.0.10)
26
+ Requires-Dist: Flask-Login (>=0.6.3)
27
+ Requires-Dist: Werkzeug (>=2.0.0)
28
+ Requires-Dist: flask (>=2.0.0)
29
+ Requires-Dist: gevent (>=22.10.2)
30
+ Requires-Dist: geventhttpclient (>=2.3.1)
31
+ Requires-Dist: msgpack (>=1.0.0)
32
+ Requires-Dist: psutil (>=5.9.1)
33
+ Requires-Dist: pywin32 ; sys_platform == "win32"
34
+ Requires-Dist: pyzmq (>=25.0.0)
35
+ Requires-Dist: requests (>=2.26.0) ; python_full_version <= "3.11.0"
36
+ Requires-Dist: requests (>=2.32.2) ; python_full_version > "3.11.0"
37
+ Requires-Dist: tomli (>=1.1.0) ; python_version < "3.11"
38
+ Requires-Dist: typing_extensions (>=4.6.0) ; python_version < "3.11"
39
+ Project-URL: Documentation, https://docs.locust.io/
40
+ Project-URL: Help/Questions, https://github.com/orgs/locustio/discussions/
41
+ Project-URL: Issue Tracker, https://github.com/locustio/locust/issues
42
+ Project-URL: Repository, https://github.com/locustio/locust
43
+ Project-URL: Stack Overflow, https://stackoverflow.com/questions/tagged/locust
44
+ Project-URL: Slack, https://locustio.slack.com/
45
+ Project-URL: Slack/Signup, https://communityinviter.com/apps/locustio/locust
27
46
  Description-Content-Type: text/markdown
28
- License-File: LICENSE
29
- Requires-Dist: gevent>=22.10.2
30
- Requires-Dist: flask>=2.0.0
31
- Requires-Dist: Werkzeug>=2.0.0
32
- Requires-Dist: requests>=2.26.0
33
- Requires-Dist: requests>=2.32.2; python_version > "3.11"
34
- Requires-Dist: msgpack>=1.0.0
35
- Requires-Dist: pyzmq>=25.0.0
36
- Requires-Dist: geventhttpclient>=2.3.1
37
- Requires-Dist: ConfigArgParse>=1.5.5
38
- Requires-Dist: tomli>=1.1.0; python_version < "3.11"
39
- Requires-Dist: typing_extensions>=4.6.0; python_version < "3.11"
40
- Requires-Dist: psutil>=5.9.1
41
- Requires-Dist: Flask-Login>=0.6.3
42
- Requires-Dist: Flask-Cors>=3.0.10
43
- Requires-Dist: pywin32; platform_system == "Windows"
44
47
 
45
48
  # Locust
46
49
 
@@ -112,6 +115,7 @@ Locust's code base is intentionally kept small and doesn't solve everything out
112
115
 
113
116
  * Documentation: [docs.locust.io](https://docs.locust.io)
114
117
  * Support/Questions: [StackOverflow](https://stackoverflow.com/questions/tagged/locust)
118
+ * Github Discussions: [Github Discussions](https://github.com/orgs/locustio/discussions)
115
119
  * Chat/discussion: [Slack](https://locustio.slack.com) [(signup)](https://communityinviter.com/apps/locustio/locust)
116
120
 
117
121
  ## Authors
@@ -124,3 +128,4 @@ Locust's code base is intentionally kept small and doesn't solve everything out
124
128
  ## License
125
129
 
126
130
  Open source licensed under the MIT license (see _LICENSE_ file for details).
131
+
@@ -68,6 +68,7 @@ Locust's code base is intentionally kept small and doesn't solve everything out
68
68
 
69
69
  * Documentation: [docs.locust.io](https://docs.locust.io)
70
70
  * Support/Questions: [StackOverflow](https://stackoverflow.com/questions/tagged/locust)
71
+ * Github Discussions: [Github Discussions](https://github.com/orgs/locustio/discussions)
71
72
  * Chat/discussion: [Slack](https://locustio.slack.com) [(signup)](https://communityinviter.com/apps/locustio/locust)
72
73
 
73
74
  ## Authors
@@ -3,6 +3,7 @@
3
3
  TYPE_CHECKING = False
4
4
  if TYPE_CHECKING:
5
5
  from typing import Tuple, Union
6
+
6
7
  VERSION_TUPLE = Tuple[Union[int, str], ...]
7
8
  else:
8
9
  VERSION_TUPLE = object
@@ -12,5 +13,8 @@ __version__: str
12
13
  __version_tuple__: VERSION_TUPLE
13
14
  version_tuple: VERSION_TUPLE
14
15
 
15
- __version__ = version = '2.29.2.dev32'
16
- __version_tuple__ = version_tuple = (2, 29, 2, 'dev32')
16
+
17
+ __version__ = "2.29.2.dev42"
18
+ version = __version__
19
+ __version_tuple__ = (2, 29, 2, "dev42")
20
+ version_tuple = __version_tuple__
@@ -483,7 +483,7 @@ class FastResponse(CompatResponse):
483
483
 
484
484
  _response: HTTPSocketPoolResponse | None = None
485
485
 
486
- encoding: str | None = None
486
+ encoding: str | float | None = None
487
487
  """In some cases setting the encoding explicitly is needed. If so, do it before calling .text"""
488
488
 
489
489
  request: FastRequest | None = None
@@ -90,13 +90,13 @@ class UsersDispatcher(Iterator):
90
90
  assert len(user_classes) > 0
91
91
  assert len(set(self._user_classes)) == len(self._user_classes)
92
92
 
93
- self._target_user_count: int = None
93
+ self._target_user_count: int = 0
94
94
 
95
- self._spawn_rate: float = None
95
+ self._spawn_rate: float = 0.0
96
96
 
97
- self._user_count_per_dispatch_iteration: int = None
97
+ self._user_count_per_dispatch_iteration: int = 0
98
98
 
99
- self._wait_between_dispatch: float = None
99
+ self._wait_between_dispatch: float = 0.0
100
100
 
101
101
  self._initial_users_on_workers = {
102
102
  worker_node.id: {user_class.__name__: 0 for user_class in self._user_classes}
@@ -107,7 +107,8 @@ class UsersDispatcher(Iterator):
107
107
 
108
108
  self._current_user_count = self.get_current_user_count()
109
109
 
110
- self._dispatcher_generator: Generator[dict[str, dict[str, int]], None, None] = None
110
+ self._dispatcher_generator: Generator[dict[str, dict[str, int]], None, None] = None # type: ignore
111
+ # a generator is assigned (in new_dispatch()) to _dispatcher_generator before it's used
111
112
 
112
113
  self._user_generator = self._user_gen()
113
114
 
@@ -131,7 +132,7 @@ class UsersDispatcher(Iterator):
131
132
  return sum(map(sum, map(dict.values, self._users_on_workers.values())))
132
133
 
133
134
  @property
134
- def dispatch_in_progress(self):
135
+ def dispatch_in_progress(self) -> bool:
135
136
  return self._dispatch_in_progress
136
137
 
137
138
  @property
@@ -9,25 +9,12 @@ import signal
9
9
  import time
10
10
  from abc import abstractmethod
11
11
  from collections import OrderedDict, defaultdict, namedtuple
12
- from collections import (
13
- OrderedDict as OrderedDictType,
14
- )
15
12
  from collections.abc import Iterable
16
13
  from copy import copy
17
14
  from html import escape
18
15
  from itertools import chain
19
- from tempfile import NamedTemporaryFile
20
16
  from types import FrameType
21
- from typing import (
22
- TYPE_CHECKING,
23
- Any,
24
- Callable,
25
- NoReturn,
26
- Protocol,
27
- TypedDict,
28
- TypeVar,
29
- cast,
30
- )
17
+ from typing import TYPE_CHECKING, Any, Callable, NoReturn, Protocol, TypedDict, TypeVar, cast
31
18
 
32
19
  import gevent
33
20
 
@@ -319,12 +306,12 @@ class StatsEntry:
319
306
  A {response_time => count} dict that holds the response time distribution of all
320
307
  the requests.
321
308
 
322
- The keys (the response time in ms) are rounded to store 1, 2, ... 9, 10, 20. .. 90,
323
- 100, 200 .. 900, 1000, 2000 ... 9000, in order to save memory.
309
+ The keys (the response time in ms) are rounded to store 1, 2, ... 98, 99, 100, 110, 120, ... 980, 990, 1000,
310
+ 1100, 1200, ... 9800, 9900, 10_000, 11_000, 12_000 ... in order to save memory.
324
311
 
325
312
  This dict is used to calculate the median and percentile response times.
326
313
  """
327
- self.response_times_cache: OrderedDictType[int, CachedResponseTimes] | None = None
314
+ self.response_times_cache: OrderedDict[int, CachedResponseTimes] | None = None
328
315
  """
329
316
  If use_response_times_cache is set to True, this will be a {timestamp => CachedResponseTimes()}
330
317
  OrderedDict that holds a copy of the response_times dict for each of the last 20 seconds.
@@ -0,0 +1,14 @@
1
+ import os
2
+ import subprocess
3
+
4
+
5
+ def build() -> None:
6
+ if os.environ.get("SKIP_PRE_BUILD", "") == "true":
7
+ print("Skipping front end build...")
8
+ return
9
+ print("Building front end...")
10
+ subprocess.run(["make", "frontend_build"])
11
+
12
+
13
+ if __name__ == "__main__":
14
+ build()
@@ -0,0 +1,209 @@
1
+ [build-system]
2
+ requires = ["poetry-core>=1.0.0", "poetry-dynamic-versioning>=1.0.0,<2.0.0"]
3
+ build-backend = "poetry_dynamic_versioning.backend"
4
+
5
+ [tool.poetry]
6
+ name = "locust"
7
+ description = "Developer-friendly load testing framework"
8
+ version = "2.29.2.dev42"
9
+ license = "MIT"
10
+ readme = "README.md"
11
+ authors = ["Jonatan Heyman", "Lars Holmberg"]
12
+ maintainers = ["Lars Holmberg", "Jonatan Heyman", "Andrew Baldwin"]
13
+
14
+ homepage = "https://locust.io/"
15
+ repository = "https://github.com/locustio/locust"
16
+ documentation = "https://docs.locust.io/"
17
+
18
+ classifiers = [
19
+ "Topic :: Software Development :: Testing :: Traffic Generation",
20
+ "Development Status :: 5 - Production/Stable",
21
+ "License :: OSI Approved :: MIT License",
22
+ "Operating System :: OS Independent",
23
+ "Programming Language :: Python",
24
+ "Programming Language :: Python :: 3",
25
+ "Programming Language :: Python :: 3.9",
26
+ "Programming Language :: Python :: 3.10",
27
+ "Programming Language :: Python :: 3.11",
28
+ "Programming Language :: Python :: 3.12",
29
+ "Intended Audience :: Developers",
30
+ "Intended Audience :: System Administrators",
31
+ "Topic :: Software Development :: Testing",
32
+ "Topic :: Software Development :: Testing :: Traffic Generation",
33
+ "Topic :: System :: Distributed Computing",
34
+ ]
35
+
36
+ packages = [{ include = "locust" }]
37
+ include = [
38
+ "locust/webui/dist/**/*",
39
+ "locust/_version.py",
40
+ { path = "poetry.lock", format = [
41
+ "sdist",
42
+ "wheel",
43
+ ] },
44
+ ]
45
+ exclude = [
46
+ "locust/webui/public",
47
+ "locust/webui/src",
48
+ "locust/webui/**",
49
+ "locust/webui/node_modules",
50
+ "locust/test",
51
+ ]
52
+
53
+ [tool.poetry.build]
54
+ script = "pre_build.py"
55
+ generate-setup-file = false
56
+
57
+ [tool.poetry.urls]
58
+ "Help/Questions" = "https://github.com/orgs/locustio/discussions/"
59
+ "Issue Tracker" = "https://github.com/locustio/locust/issues"
60
+
61
+ "Stack Overflow" = "https://stackoverflow.com/questions/tagged/locust"
62
+ "Slack" = "https://locustio.slack.com/"
63
+ "Slack/Signup" = "https://communityinviter.com/apps/locustio/locust"
64
+
65
+ [tool.poetry-dynamic-versioning]
66
+ enable = false
67
+ vcs = "git"
68
+ style = "pep440"
69
+ latest-tag = true
70
+ pattern = "^(?P<base>\\d+\\.\\d+\\.\\d+)(?P<stage>.*)$"
71
+ format-jinja = """
72
+ {%- if distance == 0 -%}
73
+ {{ serialize_pep440(base) }}
74
+ {%- else -%}
75
+ {{ serialize_pep440(bump_version(base), dev=distance) }}
76
+ {%- endif -%}
77
+ """
78
+
79
+ [tool.poetry-dynamic-versioning.files."locust/_version.py"]
80
+ persistent-substitution = true
81
+ initial-content = """
82
+ # file generated by setuptools_scm
83
+ # don't change, don't track in version control
84
+ TYPE_CHECKING = False
85
+ if TYPE_CHECKING:
86
+ from typing import Tuple, Union
87
+
88
+ VERSION_TUPLE = Tuple[Union[int, str], ...]
89
+ else:
90
+ VERSION_TUPLE = object
91
+
92
+ version: str
93
+ __version__: str
94
+ __version_tuple__: VERSION_TUPLE
95
+ version_tuple: VERSION_TUPLE
96
+
97
+
98
+ __version__ = "0.0.0"
99
+ version = __version__
100
+ __version_tuple__ = (0, 0, 0)
101
+ version_tuple = __version_tuple__
102
+ """
103
+
104
+ [tool.poetry.dependencies]
105
+ python = ">=3.9"
106
+
107
+ gevent = ">=22.10.2"
108
+ flask = ">=2.0.0"
109
+ Werkzeug = ">=2.0.0"
110
+ requests = [
111
+ { version = ">=2.26.0", python = "<=3.11" },
112
+ { version = ">=2.32.2", python = ">3.11" },
113
+ ]
114
+ msgpack = ">=1.0.0"
115
+ pyzmq = ">=25.0.0"
116
+ geventhttpclient = ">=2.3.1"
117
+ ConfigArgParse = ">=1.5.5"
118
+ tomli = { version = ">=1.1.0", python = "<3.11" }
119
+ typing_extensions = { version = ">=4.6.0", python = "<3.11" }
120
+ psutil = ">=5.9.1"
121
+ Flask-Login = ">=0.6.3"
122
+ Flask-Cors = ">=3.0.10"
123
+ pywin32 = { version = "*", markers = "sys_platform == 'win32'" }
124
+
125
+ [tool.poetry.group.dev]
126
+ optional = true
127
+
128
+ [tool.poetry.group.dev.dependencies]
129
+ mypy = "1.10.0"
130
+ pre-commit = "^3.7.1"
131
+ ruff = "0.3.7"
132
+ tox = "^4.16.0"
133
+ twine = "^5.1.1"
134
+
135
+ [tool.poetry.group.test]
136
+ optional = true
137
+
138
+ [tool.poetry.group.test.dependencies]
139
+ cryptography = "^42.0.8"
140
+ pyquery = "^2.0.0"
141
+ mock = "^5.1.0"
142
+ mypy = "1.10.0"
143
+ retry = "^0.9.2"
144
+ ruff = "0.3.7"
145
+ tox = "^4.16.0"
146
+ types-requests = "^2.32.0.20240622"
147
+
148
+ [tool.poetry.group.docs]
149
+ optional = true
150
+
151
+ [tool.poetry.group.docs.dependencies]
152
+ sphinx = "7.3.7"
153
+ sphinx-rtd-theme = "2.0.0"
154
+ readthedocs-sphinx-search = "0.3.2"
155
+ Sphinx-Substitution-Extensions = "2020.9.30.0"
156
+ Pygments = "2.16.1"
157
+ alabaster = "0.7.16"
158
+ babel = "2.13.0"
159
+ docutils = "0.18.1"
160
+ imagesize = "1.4.1"
161
+ snowballstemmer = "2.2.0"
162
+ sphinx-prompt = "1.5.0"
163
+ sphinxcontrib-applehelp = "1.0.4"
164
+ sphinxcontrib-devhelp = "1.0.2"
165
+ sphinxcontrib-htmlhelp = "2.0.1"
166
+ sphinxcontrib-jsmath = "1.0.1"
167
+ sphinxcontrib-qthelp = "1.0.3"
168
+ sphinxcontrib-serializinghtml = "1.1.10"
169
+
170
+ [tool.poetry.scripts]
171
+ locust = "locust.main:main"
172
+
173
+ [tool.ruff]
174
+ target-version = "py39"
175
+ line-length = 120
176
+ extend-exclude = [
177
+ "build",
178
+ "examples/issue_*.py",
179
+ "src/readthedocs-sphinx-search/",
180
+ ]
181
+ lint.ignore = ["E402", "E501", "E713", "E731", "E741", "F401"]
182
+ lint.select = ["E", "F", "W", "UP", "FA102", "I001"]
183
+
184
+ [tool.ruff.lint.per-file-ignores]
185
+ "examples/*" = ["F841"]
186
+
187
+ [tool.ruff.lint.isort]
188
+ section-order = [
189
+ "future",
190
+ "locust",
191
+ "standard-library",
192
+ "third-party",
193
+ "first-party",
194
+ "local-folder",
195
+ ]
196
+ # Custom selection-order: to ensure locust is imported as first in locustfiles (for successful gevent monkey patching)
197
+
198
+ [tool.ruff.lint.isort.sections]
199
+ locust = ["locust"]
200
+
201
+ [tool.mypy]
202
+ # missing type stubs
203
+ ignore_missing_imports = true
204
+ python_version = "3.9"
205
+
206
+ [tool.pyright]
207
+ exclude = ["locust/test"]
208
+ reportOptionalMemberAccess = "none"
209
+ analyzeUnannotatedFunctions = false
@@ -1,19 +0,0 @@
1
- [run]
2
- branch = True
3
- source = locust
4
-
5
- [report]
6
- exclude_lines =
7
- pragma: no cover
8
- def __repr__
9
- if self\.debug
10
- raise AssertionError
11
- raise NotImplementedError
12
- if 0:
13
- if __name__ == .__main__.:
14
- ignore_errors = True
15
- omit =
16
- docs/*
17
- examples/*
18
- locust/test/*
19
- setup.py
@@ -1,8 +0,0 @@
1
- locust.egg-info/**
2
- locustio.egg-info/**
3
- dist/
4
- build/
5
- .coverage
6
- .tox/
7
- docs/_build
8
- # Dockerfile # We'd like to ignore this, but it messes up scm_version's detection because it thinks the checkout is dirty
@@ -1,15 +0,0 @@
1
- # Migrate code style to Black
2
- 7c0fcc213d3988f6e7c6ffef63b24afe00e5fbd9
3
- 2e7a8b5697a98d1d314d6fc3ef0589f81f09d7fe
4
- # upgrade code style to 3.6 using pyupgrade
5
- 6ec972f4dbb880bf0c7a11809e6c1ba194c9784c
6
- # upgrade code style to use f-strings using flynt
7
- 313b80f27f525441c449593a3aeaf38389f63c13
8
- # upgrade typing annotations using fix-future-annotations
9
- b5324820b299b1fe7da0608f0cc8ec47f58b1e40
10
- # upgrade code style to 3.8 using pyupgrade
11
- 60f3bceacc4ab9567433d40ae3ed280750f55ff1
12
- # sort imports using ruff
13
- f99e9df700a8020e4c1967eb42dcb37ddd26e296
14
- # apply ruff 0.3.0
15
- 64428a0b4dfc75a00b175b4231db33704d8f5d36
@@ -1,20 +0,0 @@
1
- # Set default behaviour, in case users don't have core.autocrlf set.
2
- * text=auto
3
-
4
- # Explicitly declare text files we want to always be normalized and converted
5
- # to native line endings on checkout.
6
- *.c text
7
- *.h text
8
- *.py text
9
- *.js text
10
- *.rst text
11
- *.css text
12
- *.html text
13
-
14
- # Declare files that will always have CRLF line endings on checkout.
15
- *.sln text eol=crlf
16
-
17
- # Denote all files that are truly binary and should not be modified.
18
- *.png binary
19
- *.jpg binary
20
- *.gif binary
@@ -1,10 +0,0 @@
1
- ## Release Process
2
-
3
- * Install github_changelog_generator (https://github.com/github-changelog-generator/github-changelog-generator/) if not installed
4
- * Run github_changelog_generator to update `CHANGELOG.md`
5
- - `make changelog`
6
- * Update `locust/__init__.py` with new version number: `__version__ = "VERSION"`
7
- * Make git tag
8
- * Push git tag
9
- * Update Automated Builds configuration in Docker Hub so that the newly created
10
- git tag is built as the "latest" docker tag
@@ -1,63 +0,0 @@
1
- name: Bug
2
- description: Report an error
3
- labels: ["bug"]
4
- body:
5
- - type: checkboxes
6
- attributes:
7
- label: Prerequisites
8
- options:
9
- - label: I am using [the latest version of Locust](https://github.com/locustio/locust/releases/)
10
- required: true
11
- - label: I am reporting a bug, not asking a question
12
- required: true
13
-
14
- - type: markdown
15
- attributes:
16
- value: |
17
- If you just need help with something, then:
18
-
19
- * [Check the documentation](https://docs.locust.io/en/stable/)
20
- * [Check the FAQ in the wiki](https://github.com/locustio/locust/wiki/FAQ)
21
- * Search [Stack Overflow](https://stackoverflow.com/questions/tagged/locust), or [ask there](https://stackoverflow.com/questions/ask) yourself. If you tag your question with `locust` we will see it.
22
- * Ask on [Locust's slack](https://locustio.slack.com) [(sign up here)](https://communityinviter.com/apps/locustio/locust)
23
-
24
- - type: textarea
25
- attributes:
26
- label: Description
27
- description: What happened, and what did you want/expect to happen?
28
- validations:
29
- required: true
30
-
31
- - type: input
32
- attributes:
33
- label: Command line
34
- description: |
35
- For example: locust -f mylocustfile.py -t 10s --headless
36
- validations:
37
- required: true
38
-
39
- - type: textarea
40
- attributes:
41
- label: Locustfile contents
42
- description: Please remove everything that isn't necessary to trigger the issue.
43
- render: python3
44
- validations:
45
- required: true
46
-
47
- - type: input
48
- attributes:
49
- label: Python version
50
- validations:
51
- required: true
52
-
53
- - type: input
54
- attributes:
55
- label: Locust version
56
- validations:
57
- required: true
58
-
59
- - type: input
60
- attributes:
61
- label: Operating system
62
- validations:
63
- required: true
@@ -1 +0,0 @@
1
- blank_issues_enabled: false
@@ -1,29 +0,0 @@
1
- name: Feature request
2
- description: Suggest an improvement
3
- labels: ["feature request"]
4
- body:
5
- - type: checkboxes
6
- attributes:
7
- label: Prerequisites
8
- options:
9
- - label: I am using [the latest version of Locust](https://github.com/locustio/locust/releases/)
10
- required: true
11
- - label: I am suggesting a new feature, not asking a question
12
- required: true
13
-
14
- - type: markdown
15
- attributes:
16
- value: |
17
- If you just need help with something, then:
18
-
19
- * [Check the documentation](https://docs.locust.io/en/stable/)
20
- * [Check the FAQ in the wiki](https://github.com/locustio/locust/wiki/FAQ)
21
- * Search [Stack Overflow](https://stackoverflow.com/questions/tagged/locust), or [ask there](https://stackoverflow.com/questions/ask) yourself. If you tag your question with `locust` we will see it.
22
- * Ask on [Locust's slack](https://locustio.slack.com) [(sign up here)](https://communityinviter.com/apps/locustio/locust)
23
-
24
- - type: textarea
25
- attributes:
26
- label: Description
27
- description: Describe what feature you are missing, and what alternatives you have considered.
28
- validations:
29
- required: true
@@ -1,26 +0,0 @@
1
- name: Mark stale issues
2
-
3
- on:
4
- schedule:
5
- - cron: "30 1 * * *"
6
- workflow_dispatch:
7
-
8
- permissions:
9
- contents: read
10
-
11
- jobs:
12
- stale:
13
- permissions:
14
- issues: write # for actions/stale to close stale issues
15
- pull-requests: write # for actions/stale to close stale PRs
16
- runs-on: ubuntu-latest
17
-
18
- steps:
19
- - uses: actions/stale@v3
20
- with:
21
- repo-token: ${{ secrets.GITHUB_TOKEN }}
22
- stale-issue-message: "This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 10 days."
23
- close-issue-message: "This issue was closed because it has been stalled for 10 days with no activity. This does not necessarily mean that the issue is bad, but it most likely means that nobody is willing to take the time to fix it. If you have found Locust useful, then consider contributing a fix yourself!"
24
- stale-pr-message: "This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 10 days."
25
- close-pr-message: "This PR was closed because it has been stalled for 10 days with no activity."
26
- days-before-close: 10