The most important changes can also be found in the documentation.
2.15.1 (2023-03-14)
Closed issues:
Merged pull requests:
- Update helper text #2317 (rafaelhdr)
- Add PERCENTILES_TO_CHART param in stats.py to make the Response Time Chart configurable #2313 (A1BOCO)
2.15.0 (2023-02-28)
Fixed bugs:
Merged pull requests:
- Fix locustio#2302 unknown worker spawning message #2309 (ykvch)
- Prevent Download as PNG text from getting cut off #2308 (allison-strandberg)
- Remove request_success and request_failure event handlers #2306 (cyberw)
- Remove verbose FastHttpUser error messages #2301 (cyberw)
- fix: docs describing running without web UI had improper flag -f. Cor… #2297 (adriangonciarz)
- Update performance estimates for modern Python and hardware #2295 (cyberw)
- docs (#2188): Add Locust Kubernetes Operator #2288 (AbdelrhmanHamouda)
- add events when initialize Environment #2285 (keegoo)
- add is_secret option for custom args to be shown in the web UI masked #2284 (mzhukovs)
2.14.2 (2023-01-04)
Fixed bugs:
- 2.14.1 release missing py.typed file #2282
2.14.1 (2023-01-03)
Fixed bugs:
- SetuptoolsDeprecationWarning when building with setuptools/65.5.0 #2279
- Error installing locust using pipenv as a -- #2277
Merged pull requests:
- Fix setuptools deprecation warnings #2281 (heyman)
- Improve documentation structure #2278 (THUzxj)
- Fix exception grouping for requests with both catch_response and name arguments #2276 (ianmetcalf)
- remove typo in running cloud integration docs #2275 (WordsofDefiance)
- Stats in json to stdout (new command line option --json) #2269 (AndersSpringborg)
2.14.0 (2022-12-13)
Merged pull requests:
- Move the rest method into FastHttpUser instead of RestUser. #2274 (cyberw)
- Add RestUser #2273 (cyberw)
- GRPC example - rewrite using interceptor #2272 (zifter)
2.13.2 (2022-12-09)
Fixed bugs:
- docs: Small errors in docs #2253
Closed issues:
- UnboundLocalError after receiving ZMQ corrupted message #2260
Merged pull requests:
2.13.1 (2022-12-01)
Fixed bugs:
- locust.io is down #2265
- locust 2.13.0 failed to run #2263
- Issue installing on M1 Mac #2249
- 'Namespace' object has no attribute 'stop_timeout' in version 2.13.0 #2243
Closed issues:
- locust test flask application #2255
Merged pull requests:
- Dont reset connection to worker if master receives a corrupted zmq message #2266 (marcinh)
- auto generated locustfiles from browser recordings using har2locust (documentation) #2259 (cyberw)
- Small fixes to documentation #2254 (jscanlannyc)
- Added a better working docker command for Windows users #2248 (MagnusNordboe)
- Update documentation for Environment.parsed_options #2247 (klazuka)
- Use C-style (percent) string formatting for all debug logging statements (improves performance) #2245 (cyberw)
- Replace datetime.utcnow() with datetime.now(tz=timezone.utc), as it is kind of an antipattern #2244 (cyberw)
- Tiny performance enhancements #2240 (cyberw)
2.13.0 (2022-10-28)
Fixed bugs:
LoadTestShape
not included in the API docs #2232- ImportError: cannot import name 'OrderedDict' from 'typing' #2223
Merged pull requests:
- Fix issue with --stop timeout parsing time strings #2239 (cyberw)
- Make LoadTestShape a proper abstract class #2233 (cyberw)
- Add the ability to set default_headers on FastHttpUser #2231 (cyberw)
- URL link on the host name for fast navigation to the API #2228 (JonanOribe)
2.12.2 (2022-10-14)
Fixed bugs:
- Class picker incorrectly populates Parsed Options #2192
Closed issues:
- Run time input for web-ui #2198
Merged pull requests:
- Run unit tests on Python 3.11 (and explicitly support it) #2225 (cyberw)
- Fix exception when someone sets both --headless and --autostart #2224 (cyberw)
- Delete the
CustomMessageListener
class for type consistency #2221 (samuelspagl) - Output install location and version info when called with -V #2213 (cyberw)
2.12.1 (2022-09-21)
Fixed bugs:
- Editing a running test in the Web UI with class-picker restarts user count back at 0 #2204
Closed issues:
- Add logger when worker is waiting for master to connect #2199
- Python 3.10 available for the latest docker hub hosted image #2196
Merged pull requests:
- black format info is added #2212 (SamPosh)
- Second fix for --class-picker resetting user_count on edits #2210 (mikenester)
- Bug Fix for User Class Count reset when editing a running test and using --class-picker #2207 (mikenester)
- Modernize type hints #2205 (cyberw)
- Allow setting run time from the web UI / http api #2202 (ajt89)
- Fix parsed options user classes when using class picker #2201 (mikenester)
- Bump docker base image to Python 3.10 #2197 (cyberw)
- stats summary refactoring #2193 (SamPosh)
2.12.0 (2022-09-07)
Fixed bugs:
- WebUI
Edit running load test
not carrieduser_classes
when enabled--class-picker
#2170
Merged pull requests:
- Log warning if tag filtering gets rid of all tasks #2186 (cyberw)
- GitHub Workflows security hardening #2184 (sashashura)
- ft: LoadTestShapes with custom user classes #2181 (samuelspagl)
- Bump FastHttpUser/geventhttpclient dependency to 2.0.2 #2180 (cyberw)
- Allow more recent versions of pyzmq (it was only 23.0.0 that was broken) #2179 (cyberw)
- Bump default concurrency for fast http user to 10 #2177 (cyberw)
- Web UI style fixes: about dialog cannot be opened in the startup page #2173 (alterhu2020)
2.11.1 (2022-08-25)
Merged pull requests:
- Use more clear wording in --run-time reached stopping log message. #2172 (cyberw)
- fix: edit load test missing the userclasses data #2171 (alterhu2020)
- Fix custom message example in documentation #2165 (aathan)
- Fix broken link in cpu warning message. #2164 (conghuiw)
- Allow multiple definitions of same user class name if they come from the same place #2160 (cyberw)
- Include worker_index in worker connection logging, and stop using the word "client" for what is actually a worker #2159 (cyberw)
- Upgrade GitHub Actions #2158 (cclauss)
- Fix typo #2157 (cclauss)
2.11.0 (2022-08-12)
Fixed bugs:
- Not able to achieve high RPS (3000 users, 20 workers, 32 vcpu-64 GB RAM) #2154
- Flask 2.2.0 Update breaks request_stats_full_history_csv in web.py #2147
- "New test" with different number of users #2135
Closed issues:
- Use of different LoadTestShape classes in the same locust file #2151
Merged pull requests:
- Add example launch.json for debugging the whole Locust runtime in vscode #2156 (SamPosh)
- feat: add 'worker_index' to WorkerRunner #2155 (gdm85)
- chore: Remove misleading docstring in test #2153 (mboutet)
- fix: Ensure new test starts with specified number of users after previous test has been stopped #2152 (mboutet)
- Pass multiple Locustfiles and allow selecting User and Shape class from the WebUI #2137 (mikenester)
2.10.2 (2022-08-03)
Fixed bugs:
- [SocketIOUser] - I have provided the code to turn off the SSL certification but still, I'm getting an SSL certification error #2144
- HTML Report does not correctly escape statistics data #2126
- "Stop" hang on "stopping" state when there are more than one workers in distributed mode. #2111
Closed issues:
- Html report: table should be sortable #2132
- Funny resource URL prefix disallows using locust behind nginx proxy #2030
Merged pull requests:
- Fix for Flask 2.2.0 breaking changes #2148 (mikenester)
- style: add a report favicon #2145 (Pactortester)
- Better error message when User.task is set instead of User.tasks #2142 (cyberw)
- Minor edits to the documentation #2140 (sosna)
- Small documentation correction #2138 (andybyrne)
- Log a warning for failed attempts to connect to master #2136 (gdm85)
- Test Report: Implement table sorting #2134 (Likqez)
- fix: Fix typo at user/wait_time.py #2133 (DmytroLitvinov)
- Fix escaping for exceptions in normal web ui (related to #2126) #2131 (herrmanntom)
- Replace the MD5 usage by SHA256 #2130 (RenanGBarreto)
- Escape user supplied data in html report (#2126) #2127 (herrmanntom)
2.10.1 (2022-06-28)
Merged pull requests:
- Increase CONNECT_RETRY_COUNT to avoid workers giving up too soon if master is not up yet #2125 (cyberw)
2.10.0 (2022-06-27)
Closed issues:
- Add ACK for worker connection #2044
Merged pull requests:
- Remove timeout parameter from FastHttpUser unit tests #2123 (cyberw)
- Convert url for getting tasks to relative #2121 (5imun)
- More robust handling of ZMQ/RPC errors #2120 (solowalker27)
- Update the link for reporting data to a database #2119 (AlexMooney)
- fix: stopping state when running more than one worker node. #2116 (renato-farias)
- add support for custom SSLContext when using FastHttpUser #2113 (renato-farias)
- chore: Set permissions for GitHub actions #2107 (naveensrinivasan)
- additional typing improvements #2106 (mgor)
- Stop client_listener from raising a KeyError when receiving a client_stopped message from unknown worker #2102 (BirdLearn)
- Fix multiple resetting connection after RPCError #2096 (Nosibb)
- Add ack for worker connection #2077 (Nosibb)
2.9.0 (2022-05-19)
Fixed bugs:
- Locust is not starting with pyzmq 23.0.0 #2099
- Users with
fixed_count
not being relocated after rebalance #2091 - jinja2.exceptions.TemplateAssertionError: no test named 'boolean' when attempting to visit UI #2087
- Output is not saved to CSV when using LoadTestShape #2075
- New jinja2 pinning makes it impossible to build our codebase #2061
test_start
event triggered multiple times on workers #1986
Merged pull requests:
- avoid using pyzmq 23. Fixes #2099 #2100 (cyberw)
- dispatch: rebalance users with a fixed count #2093 (andydunstall)
- Remove explicit version requirement for jinja2 #2090 (cyberw)
- print_stats table width fix for #2084 #2088 (mgor)
- Move CSV stats printer gevent spawn up a few lines #2085 (max-rocket-internet)
- uniform style of stats/report ascii tables #2084 (mgor)
- FastHttpUser improvements (including a rename of parameter "url" to "path") #2083 (mgor)
- Add table linkage, you can see the data of the three tables at the sa… #2082 (helloNice)
- Drop support for Python 3.6 #2080 (cyberw)
- Ensure
test_start
is run to completion on worker #2072 (mboutet) - modernized build #2070 (mgor)
2.8.6 (2022-04-07)
Merged pull requests:
- Further slim docker image #2068 (cyberw)
- Add cpu_warning event, so listeners can do some action when CPU usage is too high #2067 (cyberw)
- Fix typo in example in docs #2064 (chalex2k)
- Move lint tests to their own tox environments #2062 (kurtmckee)
- Bump black version to 22.3.0 #2060 (miedzinski)
- Support sharing connection pools between users #2059 (miedzinski)
2.8.5 (2022-03-28)
Merged pull requests:
2.8.4 (2022-03-15)
Fixed bugs:
- Locust while running as library with grpc client not outputting stats #1969
- Locust does not stop all users #1947
Closed issues:
- Introduce test_stopping event #2031
Merged pull requests:
- Add quit event, used for getting locust's exit code just before exit #2049 (DennisKrone)
- Bugfix/1947 locust does not stop all users #2041 (marcinh)
- fixing mypy errors with loosest rules #2040 (mgor)
- Add test_stopping event #2033 (marcinh)
- fixed load/users getting distributed to missing worker #2010 (radhakrishnaakamat)
2.8.3 (2022-02-25)
Merged pull requests:
- Ran pyupgrade on the code base, removing various "Python2-isms". #2032 (cyberw)
- Ensure users are distributed evently across hosts during ramp up #2025 (cyberw)
- Bump minimum required gevent version to 20.12.1 #2023 (cyberw)
- Fix typos #2022 (kianmeng)
2.8.2 (2022-02-14)
Fixed bugs:
- Issue to install python libraries inside locust container when using the locust docker image version 2.8.1 #2015
Merged pull requests:
- Dockerfile: Fix permissions in venv to allow installing packages in derived images #2016 (cyberw)
- Fix locust version in docker image (lose the .dev0) #2014 (cyberw)
2.8.1 (2022-02-13)
Fixed bugs:
- Load being distributed to missing workers too Version 2.7.4.dev14 #2008
Merged pull requests:
2.8.0 (2022-02-13)
Closed issues:
Merged pull requests:
- Dockerfile: only install build dependencies on arm64 (everyone else has pre-built wheels) #2011 (cyberw)
- Shrink docker image, mainly by switching base image to python3.9-slim #2009 (cyberw)
- Fix link to distributed load generation documentation in CPU log warning #2007 (mayaCostantini)
- Mark package as being typed and add some missing type hints #2003 (RobertCraigie)
- Fix empty tasks section in UI and static report bug #2001 (EzR1d3r)
2.7.3 (2022-02-06)
Merged pull requests:
- Support locust-plugin's Playwright User: Import trio before gevent patching if LOCUST_PLAYWRIGHT is set #1999 (cyberw)
- #1994 Fixing to fallback in case of local execution #1997 (tyge68)
2.7.2 (2022-02-03)
Fixed bugs:
- locust:2.7.1 exits when clicking "Stop Tests" in the UI #1995
Merged pull requests:
2.7.1 (2022-02-02)
Fixed bugs:
- --html doesnt work in web mode #1944
Merged pull requests:
- Allow repeated runs of run_single_user #1993 (cyberw)
- fix --html report in web mode #1992 (uddmorningsun)
2.7.0 (2022-01-29)
Closed issues:
- I hope to add a column of 99%ile on the Web UI #1966
Merged pull requests:
- Fix "socket operation on non-socket" at shutdown, by reverting #1935 #1991 (cyberw)
- unit tests: add extra validations in integration tests #1990 (cyberw)
- Add 99%ile for Web UI #1989 (FooQoo)
- Add run_single_user and documentation on how to debug Users/locustfiles #1985 (cyberw)
- hardening Environment.shape_class for distinct usage #1983 (uddmorningsun)
- Fixing issue #1961 with incorrect "All users spawned" log messages wh… #1977 (EzR1d3r)
2.6.1 (2022-01-26)
Merged pull requests:
- Fire requests through Environment.events #1982 (BonelessPi)
- Fix docs with underscore postfix for hyperlink? #1979 (jeroenhendricksen)
- Repair broken hyperlinks in documentation #1978 (jeroenhendricksen)
2.6.0 (2022-01-23)
Fixed bugs:
- Docs: Missing locustfile.py in code structure example #1959
- Error when setting multiple host values #1957
Closed issues:
- Possibility to set the exact number of users to spawn (instead weight) #1939
Merged pull requests:
- Pass tags and exclude-tags to workers. #1976 (cyberw)
- WorkerRunner: read --expect-workers from job parameters #1975 (cyberw)
- Update README.md #1974 (eltociear)
- Clean up some logging messages #1973 (cyberw)
- Ensure heartbeat_worker doesnt try to re-establish connection to workers when quit has been called #1972 (cyberw)
- fixed_count: ability to spawn a specific number of users (as opposed to just using weights) #1964 (EzR1d3r)
- Update running-cloud-integration.rst #1958 (DieBauer)
- fix master runner not close rpc server #1935 (lizhaode)
2.5.1 (2021-12-09)
Fixed bugs:
- User distribution should happen when new workers comes in #1884
Merged pull requests:
- Fix running the web UI with class defined hosts #1956 (chaen)
- Throw exception when calling response.success()/.failure() if with-block has not been entered #1955 (cyberw)
- Gracefully fail to resize stats command line output if terminal doesnt support it, instead of crashing #1951 (cyberw)
- Stop declaring "fake" class level variables in Environment, User and StatsEntry #1948 (cyberw)
- fix misspellings in doc (mostly "it's") #1945 (deronnax)
- Fixed typo in writing-a-locustfile.rst #1943 (Maffey)
- Fix docs issues from distributed execution with IaC #1934 (marcosborges)
- New Provisioning Example for Distributed Execution Using IaC - Terraform/AWS/EC2 #1933 (marcosborges)
- Ensure terminal is restored at exit #1932 (cyberw)
- Fix issue #1915 #1916 (EzR1d3r)
2.5.0 (2021-11-05)
Merged pull requests:
- Change request event url field to contain absolute URL not just path. #1927 (cyberw)
- Suppress warnings for patch version mismatch between master and worker (and make them debug level instead) #1926 (cyberw)
2.4.3 (2021-11-02)
Fixed bugs:
- module 'signal' has no attribute 'SIGWINCH' on 2.4.2 #1924
2.4.2 (2021-11-01)
Fixed bugs:
Closed issues:
- Update locustio/locust Docker image to Python 3.9.6 #1821
Merged pull requests:
- Add --expect-workers-max-wait parameter #1922 (cyberw)
- Fixed #1909 -- Return UTC datetime with the POSIX timestamp for API /stats/report #1918 (uddmorningsun)
- Track worker memory #1917 (solowalker27)
- Auto-resize stats table when terminal window is resized #1914 (cyberw)
- Fix typos in documentation #1912 (mnigh)
- Fix missing data in stats_history/HTML chart when running LoadShape #1911 (AlexisC0de)
2.4.1 (2021-10-19)
Fixed bugs:
- No longer logging interval stats when using LoadTestShape after 2.1.x #1906
Merged pull requests:
- Fix stat printing when using shapes #1907 (cyberw)
- Change docker image to use Python 3.9 #1904 (cyberw)
2.4.0 (2021-10-11)
Fixed bugs:
- Locust will not work, if there is a custom 'run' @task / function #1893
- MasterRunner target_user_count no longer set for test_start event listeners #1883
Merged pull requests:
- Missing colons after else keyword in Event Hooks doc #1902 (TatchNicolas)
- Support (and test) Python 3.10 #1901 (cyberw)
- Add start_time and url parameters to request event. #1900 (cyberw)
- Make User.run/TaskSet.run final and raise an exception if someone marks it with @task #1895 (cyberw)
- Ensure target_user_count is set before test_start event is fired #1894 (mboutet)
- Ensure target_user_count is set before ramping-up or down #1891 (mboutet)
- Release docker image for arm64. #1889 (odidev)
- #1884 User distribution should happen when new workers comes in #1886 (tyge68)
2.2.3 (2021-09-20)
Merged pull requests:
2.2.2 (2021-09-15)
Fixed bugs:
- Version information in Docker image is incorrect #1885
Closed issues:
- Ability to explicitly set which arguments will be exposed/visible in the web ui #1876
Merged pull requests:
- Ability to hide extra args from web ui #1881 (fabito)
- Refactor (remove duplication) headless/autostart mechanism. #1880 (cyberw)
- Wait for --expect-workers when running --autostart #1879 (cyberw)
- Dont launch autostart greenlet on workers, even if they happened to get the --autostart flag #1878 (cyberw)
- Added documentation for start_shape #1874 (daniel135790)
- Fix Regression in Full History CSV Percentiles #1873 (TaylorSMarks)
- Ability to inject custom html elements in the
head
element #1872 (fabito)
2.2.1 (2021-09-02)
Fixed bugs:
- Importing any locust plugin breaks the UI and distributed load generation. #1870
Merged pull requests:
2.2.0 (2021-09-01)
2.2.0b0 (2021-09-01)
Fixed bugs:
- time display in live charts switches to the local time upon refresh #1835
- Part of response times chart lines are missing #1702
Closed issues:
- Response times get graphed as zero before first request is made #1852
- Add flag to run with uniform weights #1838
- Starting load test from the cli but monitoring from the web UI #831
Merged pull requests:
- #1832 Displaying locustfile and tasks ratio information on index.html #1868 (tyge68)
- Add --autostart and --autoquit parameters, fixes #831 #1864 (cyberw)
- Add constant_throughput wait time (the inverse of constant_pacing) #1863 (cyberw)
- Improve some of the doc issues that were missed from the previous PR #1861 (Serhiy1)
- Handle user classes with weight = 0 #1860 (mboutet)
- fix(examples): fix multiple_hosts.py example #1859 (obradovichv)
- Alternative grouping #1858 (Serhiy1)
- HttpUser: Unpack known exceptions #1855 (cyberw)
- fix(charts): prevent displaying stats before requests are made #1853 (obradovichv)
- Use UTC time for server stats history, localize times on the client #1851 (obradovichv)
- FastHttpUser: Add it directly under locust package, make the documentation less scary. #1849 (cyberw)
- Adjust github actions #1848 (cyberw)
- Auto-generate version number using setuptools_scm and git tags #1847 (cyberw)
- Add equal weights flag #1842 (shekar-stripe)
- Show custom arguments in web ui and forward them to worker #1841 (cyberw)
- Return the new users on Runner.spawn_users #1791 (pappacena)
2.1.0 (2021-08-08)
Fixed bugs:
- OOM error with master/slaves setup (zeromq, windows) #1372
Closed issues:
- locust should add extending blocks to index.html to change the start test and edit test options #1822
Merged pull requests:
- Fix docker builds #1845 (cyberw)
- Bump dependency on pyzmq to fix #1372 (OOM on windows) #1839 (cyberw)
- Use 1 as default in web UI start form + lots of documentation updates #1836 (cyberw)
2.0.0 (2021-08-01)
Fixed bugs:
- User Count Drops when Worker Abruptly Leaves The Test In Distributed Mode #1766
Merged pull requests:
- update grpc example, because grpc gevent issue has been fixed #1834 (cyberw)
- Speed up tests #1831 (mboutet)
- Allow workers to bypass version check by sending -1 as version #1830 (cyberw)
2.0.0b4 (2021-07-28)
Merged pull requests:
- Improve logging messages and clean up code after dispatch refactoring (#1809) #1826 (mboutet)
- Remove
user_classes_count
from heartbeat payload #1825 (mboutet)
2.0.0b3 (2021-07-16)
Fixed bugs:
- FastHttpUser requests are blocking #1810
Closed issues:
- Restore locust_start_hatching functionality #1776
Merged pull requests:
- Add option to set concurrency of FastHttpUser/Session #1812 (soitinj)
- Fire test_start and test_stop events on worker nodes #1777 (nathan-beam)
2.0.0b2 (2021-07-12)
Merged pull requests:
- Auto shrink request stats table to fit terminal #1811 (cyberw)
- Refactoring of the dispatch logic to improve performance #1809 (mboutet)
2.0.0b1 (2021-07-05)
Merged pull requests:
- Check version of workers when they connect. Warn if there is a mismatch, refuse 1.x workers to connect #1805 (cyberw)
- Change the default User weight to 1 instead of 10. #1803 (cyberw)
- Upgrade to flask 2 #1764 (corenting)
2.0.0b0 (2021-07-05)
Fixed bugs:
- Distribution of user classes is not respected and some user classes are just never spawned #1618
Closed issues:
- Hatch rate in distributed mode spawns users in batches equal to number of slaves #896
Merged pull requests:
- Move User selection responsibility from worker to master in order to fix unbalanced distribution of users and uneven ramp-up #1621 (mboutet)
1.6.0 (2021-06-26)
Fixed bugs:
- status "stopped" instead of "spawning", tick() method of LoadShape called only once #1762
Closed issues:
- Allow master node to supply data to worker nodes directly #1780
Merged pull requests:
- Add CORS functionality to Locust #1793 (KasimAhmic)
- Make FastHttpUser use the same name for request_meta as HttpUser (no leading underscore) #1788 (cyberw)
- Ensure that the exception dictionaries are not mutated when generating a html report #1784 (mboutet)
- Allow cross process communication using custom messages #1782 (nathan-beam)
- modified check_stopped condition #1769 (stanislawskwark)
1.5.3 (2021-05-17)
Merged pull requests:
- Register stats from request_success and request_failure #1761 (DennisKrone)
1.5.2 (2021-05-12)
Fixed bugs:
- Locust stopped working after Flast 2.0 got released #1759
- GRPC compatibility : Locust load test throws greenlet.GreenletExit exception on reaching test time limit #1676
Merged pull requests:
- Pin flask version to 1.1.2. Fixes #1759 #1760 (cyberw)
- Measure elapsed time using time.perf_counter() #1758 (cyberw)
- Add gRPC load test example #1755 (beandrad)
1.5.1 (2021-05-04)
Merged pull requests:
1.5.0 (2021-05-04)
Merged pull requests:
- Add response object to request event #1752 (cyberw)
- Updated request event with context and deprecate request_failure/success #1750 (DennisKrone)
1.4.4 (2021-04-04)
Fixed bugs:
- self.quit() fails test doesn't stop #1726
- LoadTestShape run_time broken when using test_start and test_stop decorators #1718
- Distributed test stopped despite workers running #1707
- Charts not working well in version 1.4.2 #1690
Closed issues:
Merged pull requests:
- Fix test issue probably caused by updated configargparse version. #1739 (cyberw)
- Call shape_class.reset_time() after test_start event so that tick time is correct #1738 (max-rocket-internet)
- Ensure runner.quit finishes even when users are broken #1728 (cyberw)
- make runner / user count available to LoadTestShape #1719 (msarahan)
- Fix typo in ~examples/dynamic_user_credentials.py #1714 (luke-h1)
- Fix automatic distributed test shutdown #1710 (enote-kane)
- fix type hinting on Events #1705 (mrijken)
- updated double wave load shape docs to reflect peak times #1698 (pranavgupta1234)
- add LoadTestShape to __all__ in order to fix warning "'LoadTestShape'… #1696 (amitwer)
1.4.3 (2021-01-28)
Merged pull requests:
1.4.2 (2021-01-26)
Fixed bugs:
- Report charts plot data points after the test has ended #1677
- SetConsoleMode throws an error when locust is run from Jenkins Powershell #1654
- locust should exit when a load shape returns None in headless mode #1653
- test_stop is fired twice when Locust is running in –master/worker mode #1638
Closed issues:
- currently locust is supporting for stas, failures, stas history in csv format while running without web #1673
- /swarm web endpoint should not require user_count and spawn_rate when shape_class is used #1670
- Show legends on charts #1651
Merged pull requests:
- Verify docker build & create PyPI releases through Github Actions when tags are pushed #1687 (heyman)
- Use Github Actions for CI #1686 (heyman)
- Shutdown workers when using LoadTestShape and headless mode #1683 (max-rocket-internet)
- Stats charts data persistance #1681 (aek)
- Fix issues with render_template #1680 (aek)
- Improve stats data sharing from python to js #1679 (aek)
- Feature chart sync #1678 (aek)
- Feature stats exceptions csv #1674 (aek)
- /swarm adjusted for tests with shape class #1671 (stanislawskwark)
- Fix a typo #1665 (atken)
- Feature chart tooltip custom values - show user count #1658 (aek)
- Check if running from a tty on windows #1657 (DennisKrone)
- Bump Echarts version to show charts legends #1655 (aek)
- Add example that manually adds stats entries #1645 (heyman)
- Use SASS for CSS styling + UI improvements #1644 (heyman)
- Fix bug causing test_stop event to be fired twice in master node #1641 (heyman)
- Added --html option to save HTML report #1637 (rloomans)
1.4.1 (2020-11-16)
Fixed bugs:
- Locust docker version 1.4.0 using 100% CPU on idle #1629
Merged pull requests:
- Fix 100% cpu usage when running in docker/non-tty terminal #1631 (DennisKrone)
1.4.0 (2020-11-13)
Closed issues:
- Control user count from terminal #1600
- Introduce sensible default settings for run time #1598
- Make wait_time default to zero (vote up/down for this ticket please :) #1308
Merged pull requests:
- Improve logging about users spawned/stopped #1628 (cyberw)
- Make zero wait time the default #1626 (cyberw)
- Make infinite run time the default when running headless #1625 (cyberw)
- issue-1571 : Added a logging line when workers connect #1617 (zdannar)
- Add key commands for increasing and stopping users #1612 (DennisKrone)
1.3.2 (2020-11-03)
Merged pull requests:
- Run builds for python 3.9 #1607 (cyberw)
- Add note and link to k8s Helm chart #1606 (max-rocket-internet)
- Replace '<' and '>' for swarm 'host' field. Fix for XSS attack. #1603 (lhupfeldt)
1.3.1 (2020-10-15)
1.3.0 (2020-10-12)
Fixed bugs:
- After starting and then stopping a load test, master is updating state in a loop #1577
- Misleading log message in distributed mode #1572
- LoadTestShape.get_run_time is not relative to start of test #1557
- On Stop causes the task to continue #1552
Closed issues:
- Remove step load feature now that LoadTestShape is possible? #1575
- Add ability to easily extend Locust web UI #1530
- Type hinting for common functions #1260
Merged pull requests:
- Start web_ui later to avoid race adding UI routes #1585 (solowalker27)
- Remove step load feature #1584 (max-rocket-internet)
- Add more type hints #1582 (cyberw)
- Run time relative to start when using LoadTestShape #1581 (DennisKrone)
- Don't log state change if it's the same #1580 (max-rocket-internet)
- SequentialTaskSet improvements #1579 (cyberw)
- Fixed documentation for tags to link properly. #1578 (Trouv)
- More easily extend web UI #1574 (solowalker27)
- Only warn about open file limit when not running as master #1573 (parberge)
- Adding more debug logging for runners.py #1570 (max-rocket-internet)
- Add friendlier message about expected limit #1566 (parberge)
- Update documentation for schedule_task parameters in TaskSet (task.py) #1565 (kmels)
- Added comment for clarity #1561 (raiyankamal)
- Refactor and fix delayed user stopping in combination with on_stop #1560 (cyberw)
- Remove legacy code that was only needed for py2 #1559 (cyberw)
- Clean up code and tighten flake8 linting #1558 (cyberw)
1.2.3 (2020-08-28)
Fixed bugs:
- Unable to install packages using pip #1548
- Cant start: Werkzeug: TypeError: code() takes at least 14 arguments (13 given) #1545
- use_as_lib.py example getting stuck when running #1542
- Locust stuck in "Shape worker starting" when restarting a test from the webUI #1540
Closed issues:
- Let's fix code to be PEP8 compliant? #1489
Merged pull requests:
- Various linting fixes #1549 (cyberw)
- Reformat code using black. Also add black --check to build. #1547 (cyberw)
- fix use_as_lib example #1543 (taojy123)
- Fix stopping and restarting of LoadTestShape test #1541 (max-rocket-internet)
1.2.2 (2020-08-22)
Merged pull requests:
- Fix load shape worker in headless. #1539 (cyberw)
- Add test case for stats_history #1538 (taojy123)
- Update README.md to have full links to images #1536 (max-rocket-internet)
1.2.1 (2020-08-20)
Fixed bugs:
- ValueError: StatsEntry.use_response_times_cache must be set to True #1531
Merged pull requests:
- fix #1531 (ValueError: StatsEntry.use_response_times_cache must be set to True) #1534 (cyberw)
- Add missing parameter to render_template to grey out UI fields #1533 (max-rocket-internet)
- Update repo README with new wording, locust example, screenshots #1532 (max-rocket-internet)
1.2 (2020-08-19)
Fixed bugs:
- Excessive precision of metrics in losust csv stats #1501
- WorkerRunner spawns heartbeat before setting worker_state #1500
- Negative min_response_time shown in stats #1487
- Unhandled exception: ConnectionResetError, Connection reset by peer (FastHttpUser) #1472
Closed issues:
- Change the position of dividers in command line report #1514
- Allow negative hatch rate for ramping down #1488
- Missing URL to download full csv history #1468
- Support for completely custom load pattern / shape #1432
- rename "hatch rate" to "spawn rate" #1405
Merged pull requests:
- Doc review changes #1528 (phil-davis)
- Major rework of documentation & many small fixes #1527 (cyberw)
- Make hatch-rate parameter deprecated instead of killing it right away. #1526 (cyberw)
- Move dividers (pipe characters) in stats command line output. Also shrink percentiles output and remove 99.999 percentile by default Fixes #1514 #1525 (cyberw)
- Grey out UI input fields when LoadTestShape is in use #1524 (max-rocket-internet)
- Rename hatch rate to spawn rate. Fixes #1405 #1523 (cyberw)
- Keep csv files open #1522 (lhupfeldt)
- Fix issue with non str, non Exception type failure messages #1517 (cyberw)
- Add Feature: Download Report File #1516 (taojy123)
- Fix typos #1512 (phil-davis)
- Fix typo of failure_percentage in test_stats.py #1511 (phil-davis)
- Fix old HttpLocust reference in docs #1508 (phil-davis)
- Adding ability to generate any custom load shape with LoadTestShape class #1505 (max-rocket-internet)
- Download full history - see issue 1468 #1504 (lhupfeldt)
- Fix csv stats precision #1503 (vstepanov-lohika-tix)
- Allow ramping down of users #1502 (max-rocket-internet)
- Add 2 things to .gitignore #1498 (max-rocket-internet)
- Print valid URL when --web-host is not specified #1496 (dmitrytokarev)
- Replace time.time() with time.monotonic() #1492 (max-rocket-internet)
- Remove "Loadgen" from CPU warning log messages #1491 (max-rocket-internet)
- Fix small typo in docker docs #1490 (max-rocket-internet)
- fade into the running screen before getting a response from the server #1479 (camilojimenez)
- Refactoring stats to handle custom percentiles #1477 (vstepanov-lohika-tix)
- Handle connection reset error in fast http client #1475 (bendizen)
1.1.1 (2020-07-07)
Fixed bugs:
- --run-time flag is not respected if there is an exception in a test_stop listener #1461
- Unhandled exception: stream ended at an unexpected time #1457
- Unhandled
UnicodeDecodeError
exception if response with status 400 and request contains binary payload (for FastHttpUser) #1447
Closed issues:
- FastHttpUser: Show error codes on 'Failures' page for 'BadStatusCode' exception #1460
Merged pull requests:
- Improve logging when locust master port is busy. #1471 (cyberw)
- Handle http parse exceptions #1464 (magupov)
- Gracefully handle exceptions in event listeners #1462 (camilojimenez)
1.1 (2020-06-28)
Fixed bugs:
- Charts are twice as high as they need to #1440
- Master-host IP is not overrided by environment variable. #1424
- Two test_stop events triggered when --run-time expires #1421
- Locust Installation error on Ubuntu 16.04 and Debian Stretch #1418
- locust doesn't escape the double quotes in the csv output #1417
- on_master_stop_hatching is not triggered on master when hatching terminates #1295
- Installing 0.12.1 requires "pipenv lock --pre" #1116
Closed issues:
- Ability to run test_start on workers. #1408
- Ability to Stop Locust Client from within the test script #1192
Merged pull requests:
- Fixes a typo #1454 (Waples)
- minor typos in docs #1453 (howardosborne)
- fixed up environment.parsed_options #1450 (pentop)
- Allow Users to stop the runner by calling self.environment.runner.quit() (without deadlocking sometimes) #1448 (cyberw)
- Cut to only 5% free space on the top of the graphs #1443 (benallard)
- Base Locust Docker image on non-alpine python image #1435 (heyman)
- Quickstart documentation clarification. #1434 (JamesB41)
- Use csv module to generate csv data #1428 (ajt89)
- Add simple documentation with use case for init event #1415 (Zooce)
- Simplify documentation of catch_response & add example of response time validation. #1414 (cyberw)
1.0.3 (2020-06-05)
Fixed bugs:
- Search is broken on readthedocs #1391
Closed issues:
- Custom Request/sec exit code #587
Merged pull requests:
- Remove Bad Apostrophe #1411 (curtisgibby)
- update __init__ file #1409 (iamtechnomage)
- Rename 3 remaining instances of slave to worker #1400 (ibrahima)
- The format for providing host can be confusing at times #1398 (jo19in1)
- Ability to control the Locust process' exit code #1396 (heyman)
1.0.2 (2020-05-25)
Fixed bugs:
- Update flask version #1394
- Got "unknown user exception" when use --step-load and --step-clients #1385
- SequentialTaskSet is broken when using local class members (headless mode) #1379
- FastHttpLocust + SNI #1369
Closed issues:
- We should check limits (ulimit) and warn if they are too low #1368
- Run locust as a job but still have access to the API. #1305
- error: argument --master-port: invalid int value bug #1226
- Duplicate/confusing entry in pypi #817
Merged pull requests:
- Update flask requirement. Fixes #1394 #1395 (cyberw)
- Bump geventhttpclient and switch back to use its original repo + fix windows issue with resource module #1388 (cyberw)
- Rework quickstart documentation and update some documentation for 1.0 #1384 (cyberw)
- Make TaskSet .user and .parent read only properties, avoids / fixes #1379 #1380 (cyberw)
- Fixed typo #1378 (rahulrai-in)
- Try to increase open files limit and warn if it is still too low afterwards #1375 (cyberw)
* This Changelog was automatically generated by github_changelog_generator