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 (mkarlovich)
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 (manifiko)
- 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
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)
1.0.1 (2020-05-16)
Merged pull requests:
1.0 (2020-05-16)
Fixed bugs:
- FastHttpUser doesn't use the SNI TLS extension #1360
- DEBUG output in docker is not working #1337
- Can't run Locust distributed with --csv-full-history #1315
- [Nested TaskSet] Child TaskSet's on_stop method is not called when GreenletExit #1206
Closed issues:
- Add @only decorator to TaskSets #1275
- resp.failure() shouldnt immediately log a failed request, just mark it a such #1335
- Change CSV column names #1317
- Remove @seq_task and instead add a SequentialTaskSet class #1286
- Change how logging is handled #1285
- Remove the Locust.setup and Locust.teardown hooks in favour of adding test_start and test_stop events #1284
- Rename Locust to User/LocustUser #1283
- Clean up among the command line arguments #1282
- Docker image should not require TARGET_URL #1247
- Duplicate/confusing entry in pypi #817
- How to run test programatically #222
- Alternative terminology for "slave" #220
Merged pull requests:
- Remove task arguments #1370 (heyman)
- Add task marking for running more specific tests #1358 (Trouv)
- Add User count to CSV history stats #1316 (heyman)
- Rename locust to user #1314 (anuj-ssharma)
1.0b2 (2020-05-01)
Closed issues:
Merged pull requests:
- Split core.py into two files in separate python package #1361 (heyman)
- --config command line argument #1359 (MattFisher)
1.0b1 (2020-04-29)
Fixed bugs:
- Docker image: worker mode not starting correctly #1322
- Exception throws on attempt to report request results to master #1293
- Can't access web interface #1288
- Web page is confused when I shutdown the only slave #1279
- [Documentation] Bleeding Edge link is broken #1278
- Locust Web Dashboard Charts, Slaves sections not working after certain time #1276
- Connection pool is full, discarding connection | 'Connection aborted.', RemoteDisconnected('Remote end closed connection without response #1263
Closed issues:
- "Order of events" clarification #1349
- More information in csv reports #1292
- Rename and restructure Locust/TaskSet #1264
- Add
allow\_redirects
option to FastHttpSession.request #1238 - Retrieve failures.csv in --no-web mode #1237
- command line arguments for clients and spawn rate should populate ui in the same way as url #1186
Merged pull requests:
- Environment variable configuration changes #1355 (heyman)
- Add CLI params for TLS cert and key - serves over HTTPS #1354 (mattdodge)
- Add allow_redirects parameter to FastHttpLocust.client.request(). Fixes #1238 #1344 (cyberw)
- Give better error message when kubernetes env vars collide with locust's #1343 (cyberw)
- Fix web options #1340 (Trouv)
- Populate UI fields with -c, -r, --step-clients, and --step-time options #1339 (Trouv)
- Remove docker_start.sh and set locust as entrypoint for official Docker image #1338 (heyman)
- Allow multiple calls to response.failure() or response.success() within the same with block #1336 (heyman)
- Removed double consideration of same timestamp #1332 (Oribow)
- Make all LocustRunners aware of their target_user_count, not just MasterLocustRunner #1331 (cyberw)
- Import wait functions from locust instead of locust.wait_time #1330 (cyberw)
- Stop exposing exceptions on locust module, remove old wait api (step 1 of fixing #1328) #1329 (cyberw)
- Add Runners, WebUI and Environment to the public API #1327 (heyman)
- Update main.py about gevent.signal() #1326 (YUFEIZED)
- Improve how we do logging #1325 (heyman)
- Worker quitting then stopping via web UI bug fix #1324 (Trouv)
- Fixed some spelling/grammar on docstrings in core.py #1323 (Trouv)
- Add basic auth for webui #1313 (anuj-ssharma)
- Group related command line options together #1311 (heyman)
- Replace TaskSequence and @seq_task with SequentialTaskSet #1310 (heyman)
- Replace locust setup teardown with events #1309 (heyman)
- Decouple Runner and Locust code by introducing Locust.start and Locust.stop methods #1306 (heyman)
- Allow tasks to be declared directly under Locust classes #1304 (heyman)
- ensure the connection between master and slave in heartbeat #1280 (delulu)
0.14.6 (2020-02-25)
Closed issues:
- Fix simple typo: betwen -> between #1268
Merged pull requests:
- Fix simple typo: betwen -> between #1269 (timgates42)
0.14.5 (2020-02-25)
Fixed bugs:
Closed issues:
- Remove support for Python 2.7 & 3.5 #1120
Merged pull requests:
- add json() method to FastHttpLocust (to match regular HttpLocust) #1259 (cyberw)
- docs: remove the description of port 5558 #1255 (orisano)
- Remove six and other 2.7 compatibility code #1253 (cyberw)
0.14.4 (2020-02-03)
Fixed bugs:
- FastHttpLocust times out when HttpLocust does not #1246
0.14.3 (2020-02-03)
0.14.2 (2020-02-03)
0.14.1 (2020-02-03)
0.14.0 (2020-02-03)
Fixed bugs:
- FastHttpLocust gives error when using valid url. #1222
- Error generating request statistics CSV in master–slave mode #1191
- Stats are reset when re-balancing users across slave nodes #1168
- Slave count stuck at 3 instead of decreasing to 1 due to "missing" #1158
Closed issues:
- scale clients up and down during a run #1185
- Locust should warn if CPU usage is too high #1161
- Support Step Load Pattern (up & down) #1001
- Provide a way to specify locust counts and hatch rate per locust class #683
Merged pull requests:
- Save failures.csv in --no-web mode #1245 (ajt89)
- Drop support for pre 3.6 Python versions (give error during installation) #1243 (cyberw)
- Warn if CPU usage is too high (>90%) #1161 #1236 (cyberw)
- Update docs for running locust in Step Load Mode #1235 (delulu)
- allow 1 percent codecov degradation before failing build (because it is flaky) #1230 (cyberw)
- Disable codecov patch analysis, because it fails all the time #1229 (cyberw)
- Relax host checking for FastHttpLocust to be more in line with HttpLocust. Fixes #1222 #1227 (cyberw)
- Add "Running Locust with Docker" to the TOC #1221 (TBBle)
- Fix link formatting for the Helm chart #1219 (TBBle)
- fix: change typo UserBehavior to UserBehaviour #1218 (aasmpro)
- Fix 'd rop-in' typo to 'drop-in' #1215 (jenglamlow)
- Update running-locust-distributed.rst #1212 (Neamar)
- Warn if spawn rate is too high. Adresses bug #1174 for example. #1211 (cyberw)
- Allow users to override encoding when decoding requests (maybe using chardet, as was the default before) #1204 (cyberw)
- Allow min_wait and max_wait times of 0 #1199 (Aresius423)
0.13.5 (2019-12-17)
Fixed bugs:
- Fix percentiles printed in _stats.csv file #1198
- set default Accept-Encoding to "gzip, deflate" in FastHttpLocust to match HttpLocust behaviour #1195
- FastHttpLocust is very slow at returning the response text #1193
Merged pull requests:
- Use
response\_time\_percentile
for <name>_stats.csv file instead ofcurrent\_response\_time\_percentile
#1197 (mehta-ankit) - Send Accept-Encoding: gzip, deflate as default in FastHttpLocust. #1196 (cyberw)
- Get encoding from content-type header instead of autodetecting using chardet (which is slow) #1194 (cyberw)
0.13.4 (2019-12-16)
0.13.3 (2019-12-13)
Fixed bugs:
- Time response graph is not working on master/slave configuration #1182
- Unable to properly connect multiple slaves, master #1176
- Zero exit code on exception #1172
--stop-timeout
is not respected when changing number of running Users in distributed mode #1162
Closed issues:
- "Percentage of the requests.." table has missing column headers #1180
- Set locust parameters via env vars & config file #1166
Merged pull requests:
- Use ConfigArgParse instead of argparse, to support getting parameters from config file and/or env vars. #1167 (cyberw)
- Add toolbox control for for downloading chart as png #1165 (skivis)
- Allow locust to get SIGTERM(aka Ctrl+C) messages. #1159 (turgayozgur)
- Stats: New argument "--csv-full-history" appends stats entries every interval in a new "_stats_history.csv" File #1146 (mehta-ankit)
- Support Step Load Pattern #1002 (delulu)
0.13.2 (2019-11-18)
Fixed bugs:
- Response Times graph broken (drops to 0 after a while) #1157
- TaskSet min_wait and max_wait are ignored #891
Closed issues:
- Add charts for number of failures in the Web UI #952
0.13.1 (2019-11-16)
Fixed bugs:
- Web UI doesn't start on Python 3.8.0 #1154
- When locust exits the current RPS is outputted instead of the total RPS #1152
- Missing headline columns in response time percentile stats printed to console #1151
Closed issues:
- Be able to install pip packages using the docker image #1149
Merged pull requests:
- Docker: add home directory for locust user to install pip packages #1150 (max-rocket-internet)
- Revert "update build_url function in Locust HttpSession " #1148 (vstepanov-lohika-tix)
0.13.0 (2019-11-14)
Fixed bugs:
- autoscaling slaves resets users #1143
- Repeated secure requests with FastHttpLocust crashes in cookie management #1138
- FastHttpLocust gives ssl error with let's encrypt certs #1137
- stop_timeout defined in Locust class takes precedence over --run-time option #1117
- Test metrics are not preserved on Stop click in the UI #883
- locust stuck in hatching state #146
Closed issues:
- To improve build_url method in Locust HttpSession #1133
- Duplicate API section in navigation of document #1132
- Locust with custom clients only displays maximum response time #1084
- Stop locusts graceful #1062
- could we report 99.9% percentile in CSV file? #1040
- Provide an official Docker image #849
- Number of Users Dependent on Number of slaves ? #724
- Allow a fixed RPS rate #646
- nitpick: "# requests" should be "# successful requests"? #145
- Display percentiles in the UI instead of just min, max and average #140
Merged pull requests:
- Add response_length to request_failure event #1144 (cyberw)
- Add failure per seconds as a series in the chart #1140 (alercunha)
- Fix AttributeError: 'CompatRequest' object has no attribute 'type' in Cookiejar #1139 (cyberw)
- update build_url function in Locust HttpSession #1134 (vstepanov-lohika-tix)
- Fix and add test for when locusts fail to exit at end of iteration during stop timeout. #1127 (cyberw)
- Let's stop calling the package beta! #1126 (cyberw)
- Add p99.9 and p99.99 to request stats distribution csv #1125 (cyberw)
- New API for specifying wait time #1118 (heyman)
- Add errors grouping for dynamic endpoint #993 (dduleba)
- add 90th %ile to the stats page #945 (myzhan)
- Make stdout/stderr wrappers identify themselves as not being a tty #929 (michaelboulton)
- Specify host in web ui #523 (PayscaleNateW)
- make sure the current working dir is in the sys.path #484 (pwnage101)
0.12.2 (2019-10-26)
Fixed bugs:
- Strange behavior of "Total Requests per Second" chart #889
- Response time graph seems to be an average of all data #667
- Totals Clarity in Web Results #629
- on_request_xxx checks exiting condition against the wrong number #399
- [0.7.3] Total fails percentage calculated wrong on console #384
- URL names in dashboard are not HTML escaped #374
- Percentage of fails in Total line is greater than 100% #357
- Exceptions tab not working for on_start method #269
- Percentile response time anomalies at 100% #254
- log.py's StdErrWrapper swallows fatal stacktraces #163
- Slave count doesn't get updated in the UI if no more slaves are alive #62
Closed issues:
- Samples with response_time None crashes stats.py #1087
- Requests Per Second Plot Breaks When There are too Many Unique URLs #1059
- UI 'stop' button does not stop test #1047
- Performance degradation for constant wait time #1042
- Failure percentage being reported incorrectly #1006
- Start on_stop not before on_start has finished #969
- Possible typo in docs #946
- Control time window for RPS calculation #792
- 500 URL limit #786
- custom client from locust documentation doesn't work at all #771
- separate charts for requests per second and average response time #688
- schedule_task and data driven load test methodology #633
- locust's statistic collect N/A records #626
- how to make all locust users wait after executing on_start method ? #611
- EventHook() fired when locust user has stopped #604
- Is there a way to de-register slave with master on a slave node shutdown? #603
- Unable to Stop locust from Web interface occasionally #602
- no-web performance data saved #601
- Can you add or can I create a Pull Request to accept a command line option that would enable ALL events (http requests) to be logged to a file/location? #576
- Median response times off #565
- Dedicated Vuser for each API #564
- running-locust-distributed missing information on worker model #492
- locust executes more number of times than I expected #455
- Some uncertain for RPS #367
- Support for distributing arbitrary arguments to Locust [Proposal] #345
- Error running distributed mode on Fedora and CentOS #271
- RPS for Total shows the instant RPS #262
- grouping requests after redirect #251
- Locust can not run distributed with the web interface disabled #189
- Documentation on how to best configure a (linux) machine to run locust #128
- See what request generated a failure #103
- Support for plugins #34
Merged pull requests:
- fix self.client call in code examples #1123 (cyberw)
- Escape HTML entities in endpoint names #374 #1119 (peterdemin)
- Table layout fix to use available space better #1114 (heyman)
- Fix rounding error when spawning users from multiple locust classes #1113 (heyman)
- Add __main__.py file #1112 (jdufresne)
- Remove 'dist: xenial' from Travis configuration #1111 (jdufresne)
- Add Python 3.8 to the test matrix #1110 (jdufresne)
- Fix empty bytearray(b'') returned when using catch_response=True #1105 (skivis)
- Add an option (--stop-timeout) to allow tasks to finish running their iteration before exiting #1099 (cyberw)
- Allow None response time for requests #1088 (cyberw)
- Fixed issue with Total Requests Per Second plot #1060 (williamlhunter)
- Tox: Add flake8 tests to find Python syntax errors and undefined names #1039 (cclauss)
- Fix frontend bugs. #822 (omittones)
- Switch from using optparse to argparse for command line arguments #769 (jdufresne)
- Allow skipping the logging setup #738 (Exide)
- Added link to an Ansible role as a 3rd party tool. #704 (tinx)
0.12.1 (2019-10-18)
Fixed bugs:
- AttributeError: 'module' object has no attribute 'sleep' #1023
Closed issues:
- Throughput (RPS) value is not same in Locust WEBUI and http://localhost:8089/stats/requests/csv for same number of requests #1108
Merged pull requests:
- Remove concurrency from coverage #1102 (mbeacom)
- Adding TCP Keep Alive to guarantee master-slave communication after i… #1101 (albertowar)
- Resolve time import error in exception_handler #1095 (ajt89)
0.12.0 (2019-10-01)
Fixed bugs:
- response time has too many decimal places in the web statistics page #1081
- Fail ratio calculation for individual requests is incorrect #991
Closed issues:
- Distributed load test k8s and openshift #1100
- Official docker image does not actually exist #1092
- Connection Refused for http://localhost:8089/stats/requests in Locust non web UI mode #1086
- Sequence does not get past first nested sequence. #1080
- Support for asynchronous requests #1079
- Monitoring of server system information being tested #1076
- Logged stats show incorrect failure percentage #1074
- Identical exceptions are not aggregated and counted together #1073
- --no-web -r 1 -c 10 -t 5s --expect-slaves=1 #1071
- Is it possible to start all tests in locust immediately? #1070
- UI stops updating stats/charts when connection is interupted #1068
- When running distributed, stop the test if certain condition is met #1067
- Is it possible to autoscale slaves? #1066
- docs.locust.io out of date #1064
- unable to load testing of webmethod (.asmx) #1061
- Distributed master hangs #1058
- locust swarm can not control the machine over internet #1056
- Total Requests per Second not plotting #1055
- No module named 'HTTPLocust' #1054
- Call wait function in on_start #1053
- The locust interface does not start #1050
- why drop the "-n "prameter after version 0.8 #1048
- Looking for proxy settings will slow down the default http client #1044
- Does the statistic data use int type? #1043
- simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0) #1041
- Locust load testing for websites #1034
- Failure Control #1033
- Number of users reduce after running for 1min #1031
- Even with min_wait and max_wait == 0, I cannot break 100 requests per second. Why is that? #1030
- some Strongly expectation of Locust as a Senior performance test engineer #1029
- The “FAILURES” show on Web UI is error #1028
- Is there any approach to share a file among hatched users? #1022
- Does the web UI has authentication? #1021
- what dose total number means in distribution csv? #1019
- What does hatch_rate mean? #1018
- Multi tenancy? #1017
- 500 RPS per client limit? #1015
- locustfile as configmap -> Could not find any locustfile! Ensure file ends in '.py' #1012
- Add easy way to use FastHttpLocust #1011
- Allow custom options to be passed to locust test #1010
- How to custom the Web UI #1009
- Run results show tasks action ratio may be incomprehensible。 #1003
- Start on stop bugged #998
- RPS always lower than User counts #997
- springboot restapi HTTPError 500 #996
- help: I think my result is False? #995
- Website: broken links to ESN and Younited #988
- Request: automatic RPS \ max workers #986
- Multi-threading Tasks? #985
- When time to run (-t) timed out, pending requests seems to be aborted, and the (latest) responses get lost #984
- error: no commands supplied ....!!!!! #983
- Unable to stop load from web UI with 0.11.0 #981
- Failure events not being recorded #979
- RPS will become to 0 in distributed mode #971
- Stddev and SEM #959
- ERROR: manifest for locustio/locust:latest not found #958
- support async tasks? #924
- Web UI does not stop slave servers #911
- Request template #879
- Reset failures and/or exceptions #826
- Add support for downloading all failures to a CSV #675
- Locust exits with 1 on timeouts / errors #560
- Why the "RPS" generated by locust is much fewer than other performance testing tools ? #277
Merged pull requests:
- Improvements for Dockerfile #1093 (coderanger)
- Using docker multi-stage for 50% smaller image #1091 (max-rocket-internet)
- Min and max response times rounded to nearest int in web view #1089 (ajt89)
- Allow options to be passed to locust in docker, update docs #1083 (max-rocket-internet)
- Fix error percentage cli output #1082 (raiyankamal)
- Use docker_start.sh in docker image #1078 (raiyankamal)
- drop Python 3.4 support #1072 (cgoldberg)
- Typo fix #1051 (natanlao)
- stop looking for proxy settings #1046 (myzhan)
- Use print() function in both Python 2 and Python 3 #1038 (cclauss)
- Travis CI: The sudo tag is now depricated in Travis CI #1037 (cclauss)
- Ensure that the last samples get sent by slave and received by master. #1025 (cyberw)
- Fix grammatical error in statistic reporting #1024 (MaxVanDeursen)
- FastHttpLocust #1014 (skivis)
- Fix for the examples regarding semaphore_wait.py #1008 (ryan-WORK)
- Reset exceptions and failures when stats are reset #1000 (ajt89)
- Add failures csv download #999 (ajt89)
- Correct fail ratio calculation. Fixes #991. #994 (genericmoniker)
- Add command line argument to specify exit code on response errors #992 (Stateford)
- Geventhttpclientmergeconflicts #838 (SpencerPinegar)
0.11.1 (2019-03-19)
Closed issues:
- locust master crashes on Python 3.7: AttributeError: 'bytes' object has no attribute 'encode' #980
- Locust can not run in distributed mode in v0.10.0 #978
Merged pull requests:
- Add "stopping" state. #982 (solowalker27)
0.11.0 (2019-03-14)
Merged pull requests:
0.10.0 (2019-03-13)
Fixed bugs:
Closed issues:
- Installed in virtualenv but locust command not found (macOS Mojave 10.14) #976
- how can I send https request with locust when I already have been authentication.. #966
- How to understand -c when I run locust with no-web mode? #965
- FunctionNotFound('random_uuid is not found.',) #964
- HttpLocust class instance variable not set for all users during setup #957
- locust.runners.MasterLocustRunner failed with ExtraData #956
- Use pytest tests as locust tasks #955
- Time limit reached,but test does not stop,throw GreenletExit exception #953
- Bug: Locust master doesn't remove killed slave #951
- How to pass multiple request under same @task. Eg: If I need to pass diferrent key for same get, how to do that? Is parameterization exist? #948
- multiple user behaviour #947
- seq_task does not work #937
- locust no-web mode #933
- reqs/sec is much lower than expected #931
- --only-summary does not show the summary results #922
- locust http request size #921
- Retrieving/saving current number of users #920
- OpenVAS - ERROR: ('Connection aborted.', BadStatusLine("''",)) #918
- git changelog page on v0.9.0 return 404 #913
- locust: error: no such option: -n #912
- Next version plans #907
- Need a way for "Device" Locust class to pass a value to the TaskSet #906
- --only-summary does not show the summary results #905
- Locust Report Ui Last column is not displaying #903
- mogul,help me,when i use “sudo pip install locustio”to install, after i use“locust --help”,What should I do if I give an error #902
- Unable to Get Statistics with --csv or Web Mode when running distributed. #901
- Locust slave will not start when attempting to start via Node.js SSH2 connection. #900
- Changelog page in github referenced from docs.locust.io returns a 404 #898
- slave client_id collisions in large environments #894
- Put a big sign "you must reload this page before any stats are displayed" somewhere on the web interface #893
- Wrong statistic of total request count with 0.9.0 #892
- Questions: #890
- Strange behavior of "Total Requests per Second" chart #888
- Locust 0.9.0 slave TypeError: __init__() takes exactly 1 argument (2 given) #887
- KeyError on weighted tasks #886
- How do I view the maximum concurrency in 1 second during runtime? #880
- locust command is not found on parrot security, even when it is successfully installed #878
- use the FastHttpLocust,how to get cookies ? #861
- Immediate crash under python 3.7 #852
- Release 0.9.0 and document release steps #842
- Extended socket protocol #776
- Feature request: on_quit() #248
Merged pull requests:
- remove references to submitting feature requests #975 (cgoldberg)
- balance/recover the load distribution when new slave joins #970 (delulu)
- Ui headings #963 (cgoldberg)
- better horizontal scrolling #962 (myzhan)
- Update change logs & release 0.10.0 #960 (aldenpeterson-wf)
- Allow loading of a locustfile with multiple dots in filename #941 (raiyankamal)
- Both succeeded and failed requests are counted in total number of requests #939 (raiyankamal)
- Support horizontal scrolling for the stats table #938 (mingrammer)
- Remove repeated imports of mock #936 (Jonnymcc)
- Speed up task sequence tests #935 (Jonnymcc)
- Add heartbeat to detect down slaves #927 (Jonnymcc)
- clarifying locust class usage when no classes specified on CLI #925 (smadness)
- Include LICENSE in the sdist. #919 (benjaminp)
- fix About link #914 (cgoldberg)
- Fixed #903 to allow requests/sec UI column to display. #908 (devmonkey22)
- Update browse_docs_sequence_test #904 (Realsid)
- Use uuid4 to generate slave client_id #895 (mattbailey)
- Python37 #885 (cgoldberg)
- Official Docker image and documentation V2 #882 (spayeur207)
- Fix links to changelog in changelog #877 (dmand)
- Fix Sphinx build warnings #875 (jdufresne)
0.9.0 (2018-09-01)
Fixed bugs:
Closed issues:
- a crash bug for master #869
- I started 50 users, but i found there are 100 tomcat connections established at that time, why.... #866
- Error is raised: AttributeError: 'RequestStats' object has no attribute 'log_request' #865
- Two locust packages in pypi #863
- Locust "ConnectionError(ProtocolError('Connection aborted.', error(111, 'Connection refused')),)" #862
- Comparison of performance test results between locust and jmeter #859
- Locust fails to execute from Windows 10 #854
- Assign Locust Behavior Programmatically -- Code Example #847
- Wrong statistic of total request count #846
- Locust freezes after a while (python 3.7) #843
- how to send post reqeusts body type is raw #840
- Segmentation Fault (core dumped) under python 3.7 #839
- Don't rely on obsolete msgpack-python #837
- how to install locust 0.8 instead locust 0.8.1 hand #834
- does have url to get the response time distribution? #833
- stats with all zeros for clients > 1 #832
- setup() should always run after __init__() #829
- How locust calculate average response time and R/S for users #828
- Please check my contribution. #824
- Synthetic monitoring #821
- Locust slaves eat all available memory when working with a failing service #816
- Using Python's multiprocessing on Master #812
- How to perform basic authentication? #811
- No module named pkg_resources #810
- Locust does not work because gevent has been updated to 1.3.2 #809
- IndexError: Cannot choose from an empty sequence #803
- self.locust.drop_current_runner() #802
- Scraping google search result #800
- branch geventhttpclient need a update #795
- locust inactivity after reaching 9000 user issue #791
- Include LICENSE file in sdist #788
- How to have Locust Master dynamically allocate users to slaves #787
- slave run in docker didn't work. #784
- How to call on_start before each testcase, like setup in unittest? #781
- Locust clusters, but workers never hatch #780
- When maximum num=1 this will raise exception "Maximum number of requests reached" #778
- 100% number smaller than 99% in Percentage of the requests completed within given times #777
- Can't define unique characteristics for each locust #775
- invaild Locust(HttpLocust) class attribute: host #773
- URL requests containing “/#/” are all seen as “/” then failing when running on Locust.io #768
- Docker image and Kubernetes chart out of date at 0.7.5 #767
- Wrong tasks weight calculation over several TaskSet's #766
- Need multi level rampup pattern #765
- Documentation link at https://docs.locust.io doesn't point to current release docs #764
- website down #763
- TypeError: must be string or buffer, not None #754
- Does POST request create a entry in the DB? #752
- SSL Error when using Http Request #751
- print statements are not appearing on console when -n is 1 #750
- Error - Get_next_task return random.choice(self.tasks) and Random.py choice raise IndexError('Cannot choose from an empty sequence') from None) #748
- Default implementation of on_request_success and _failure lacks **kwargs declaration #745
- Question: https://pypi.python.org/pypi/locust/0.8 #744
- Not able to record failures in report #739
- Tested website unresponsive #737
- New Connection in locust #736
- Does locust creates a new instance/thread per locust user of httplocust class ? #734
- How I share auth cookie with the rest of tasks only for current locust user? #733
- how to run the master branch #732
- On the same server,jmeter can run 20000rps,but locust only 5000rps #727
- Connect slave nodes from remote server to master node on local machine #726
- a report plugin.Anyone interested? #723
- Severe difference in RPS when adding more than two URLs #722
- Start distributed test with multiple slaves with one command. #721
- Logo changes #716
- Locust does not count RPS if all requests fails #715
- Looking for a different flavor of on_start() behavior #714
- Option to Print Failure to Console? #711
- Reach to 3k RPS #710
- Rename RPS #709
- AWS locust sitting idle #707
- Couldn't pass 200 request / second #705
- Preparing a Linux server for Locust load tests #700
- When a slave process crashes and restarts, the master counts and waits for input from both #699
- Unusual behavior from graphs #690
- Chart is wrong #689
- ioerror cannot watch more than 1024 sockets #684
- Locust distributed noweb does not honour --num-request option #682
- Locust pure python RPC not working in distributed mode (this makes, message seem confusing) #680
- Limit of 500 requests in /stats/requests end-point #679
- No users count send in hatch_complete #678
- --no-reset-stats should be on by default #672
- 'Response' object has no attribute 'failure' in python3.5.3 #671
- Sometimes the rps is 0 #670
- Install breaks on Win7 Py3.3 Locust 0.8.1 #668
- Inaccurate response time? #663
- all tests results suddenly turned to all 0 #662
- How do we control the Clients in Locust? #659
- failure to install the latest version locust #648
- Always get errors when I run testing. #645
- Locust test results #639
- memory issue #636
- Stderr connection error ( python3.6), but no failures on UI #625
- Ability to disable SSL certificate verify #619
- tasks are not shown in locust UI statistics #591
- Installation failure on Mac OS 10.12.4 #582
- Specify host header and send request against IP #581
- Ability to set a specific number of simulated users per Locust class #575
- Slave hangs when started before master #571
- Is there a way to setup/teardown before running the load tests #553
- Never loads? #302
- Retrieving stats when running with --no-web #290
- In distributed mode, not all stats are collected/displayed in the 'main' UI #217
- URL_PREFIX feature for web UI? #149
- (libev) select: Invalid argument when trying to go past 1k users #121
- Command line option to specify the duration to run #71
- Setup/teardown hooks #59
- Define wait times by function instead of variable #18
Merged pull requests:
- update Makefile so build also creates a wheel #871 (cgoldberg)
- Fix deprecation warnings #870 (cgoldberg)
- Release 0.9.0 #867 (aldenpeterson-wf)
- Separate release into build and release steps #858 (hoylemd)
- Install instructions #857 (cgoldberg)
- Specify seconds for the
timeout
parameter #856 (hoylemd) - bump dev version to 0.9.0.dev0 #855 (cgoldberg)
- Change name of msgpack dependency. #841 (vamega)
- response time doesn't need to be cast to int, as this is implicit in … #830 (efology)
- Add tasks sequence support #827 (Ramshell)
- Fix some typos in events.py #820 (felixonmars)
- Update all pypi.python.org URLs to pypi.org #818 (jdufresne)
- Update third-party-tools.rst #808 (anhldbk)
- Remove unused nosetest settings #806 (cgoldberg)
- Drop Python 3.3 support #804 (ps-george)
- docs: Syntax highlight code and commands #797 (joar)
- Added user-defined wait_function to locust and TaskSet #785 (ps-george)
- Remove compatibility workarounds for Python 2.6 #770 (jdufresne)
- Enable pip cache in Travis CI #760 (jdufresne)
- Use https:// URLs where available #758 (jdufresne)
- Distribute package as a universal wheel #756 (jdufresne)
- Docs: update test statistics page with example responses #747 (aldenpeterson-wf)
- Introduce **kwargs to request_success/failure parameter list #746 (karol-brejna-i)
- Change Locust website url to https #743 (iassal)
- Fix typo in docstring #729 (giantryansaul)
- Changed the spelling of "occurences" on the output text #706 (ethansmith-wf)
- Merge 0.8 branch. #701 (mbeacom)
- added introduction to Locust4j #698 (myzhan)
- Resolve improper display of About in Web UI #697 (mbeacom)
- Make UI URL links relative #692 (karol-brejna-i)
- Small python 3 syntax improvement in docs #676 (miki725)
- #331: Use rounded_response_time for min/max/total response times #558 (jude)
- Refactored stats code and display median as well as 95% percentile response times in web UI's charts #549 (heyman)
- Added a slaves-tab to show the id, status and number of users running on each slave. #305 (TZer0)
- expand and re-order documentation index #779 (cgoldberg)
- drop unitt2 and use tox in 'make test' target #772 (cgoldberg)
- Fix bytes/text confusion with response objects #762 (jdufresne)
- Remove unused environment variables form tox configuration #761 (jdufresne)
- Update tox.ini so as to not respecify package dependency pyzmq #757 (jdufresne)
- Remove test dependency unittest2 #755 (jdufresne)
- Adding unit to Response Time chart #742 (albertowar)
- Use flask.jsonify for json responses #725 (hyperair)
- fix error message on invalid time format #717 (cgoldberg)
- Add codecov integration #687 (mbeacom)
- Do not reset statistics on hatch complete #674 (hhowe29)
- Adds support for setup, teardown, and on_stop methods #658 (DeepHorizons)
- Remove --num-requests/-n in favor of --run-time/-t #656 (heyman)
v0.8.1 (2017-09-19)
Closed issues:
- Release new Locust version #657
- make test is failing on 0.7 tags due to Flask 0.12 #637
- num-requests bug #512
- Run the tests for the specified time #196
- Remove support for plain sockets for master/slave communication #14
v0.8 (2017-09-19)
Closed issues:
- Infinite recursion error when testing https sites #655
- website SSL #644
- Using locust to query Cassandra #569
Merged pull requests:
- find locustfile in the root directory #609 (arthurdarcet)
v0.8a3 (2017-09-15)
Fixed bugs:
- Web UI bug when url is very long #555
- gevent.hub.LoopExit exeption, python threading and twisted reactor #397
- OpenSSL handshake error #396
- sending POST image in client.post() never receives Request.FILES #364
- Some of the requets total stats are missing when printing them to console #350
- Web UI Freezing #309
- Template request name too long #263
- Test file can not be named locust.py (or any other name that is the same as an existing python package) #138
- Prohibits the locustfile from being named 'locust.py' #546 (cgoldberg)
- Truncate number of errors displayed in the web UI #532 (justiniso)
Closed issues:
- Move Locust to the Erlang BEAM #653
- Libev over libevent and gevent suggested wsgi? #649
- How to filter certain requests when generating reports? #647
- Can't find new charts in v0.8a2 #643
- Have anyone tried setting up locust on Azure scale set ? #642
- Issue with indendation on a PUT request (Newbie) #641
- How to know why the server is down ? #640
- Locust throwing connection error failures #638
- Can't run test via locust command line #635
- ImportError if there is a "core" module in project #630
- ModuleNotFoundError in Python 3.6 OSX 10.12 #627
- the edit has bugs in distributed mode #623
- No Locust class found #621
- Display website on dashboard #620
- Latest 0.8a2 version build doesn't meet changelog #618
- locust doesn't record all the requests #615
- Summary shows 0 when request(num_request) completed before all users get hatched #610
- Unable to run the locustfile example #607
- How many locust-workers can I add to a locust-master? #605
- Distributed mode question/concern #600
- bump gevent version #598
- unlimited users #597
- Windows Authentication support? #595
- Non-200 i.e. 202 status codes are note logged as successes #594
- Running locust tests as a list of scenarios #590
- Port locust.io to HTTPS #589
- reqs/sec is lower than other tools result #586
- Inform users about unsuccessful POST requests #585
- HttpSession can't handle HTTP 301 with Location:
https,https://
#584 - Not have option --no-reset-stats #583
- ModuleNotFoundError: No module named 'cobra.core.model' in python3 #580
- Summary result #578
- OSX limited to running ~200 users #574
- How to create multiple task_set in http locust class? #573
- ImportError: No module named 'core - Python 3.5.0, 3.5.2 #572
- Successfully installed but locust command not found on macOS Sierra 10.12 #568
- How to stop once a user finishes it's set of Tasks. #567
- rendezvous implementation of Locust? #563
- Missing not reset stats option. #562
- Is there a way to share data among emmulated users? #561
- locust run in windows 10 ,error: failed to create process #559
- 【Question】"Address family not supported by protocol" when start the test #556
- Where to find the RPS chart? #554
- request: bandwidth consumption #551
- self._sleep() should not be private. #550
- MQTT with python over proxy #548
- "Connection reset by peer" failure When doing local test with lost ( >1000) concurent users #545
- How to monitor cpu and memory? #544
- Stress test with probobuf format? #543
- Setting a CookieJar #542
- Bugs in show_task_ratio and show_task_ratio_json #540
- Incorrect calculation of avg_response_time and current_rps in no_web mode #538
- Release for 0.8.0 #533
- No module named 'core' error #531
- on_start function calls for every hatch #529
- Add Python 3.6 to build pipeline #527
- Python v2 exception on import ipdb - StdOutWrapper has no attribute 'flush' #526
- SSL error:self signed certificate #524
- How to use locust? #522
- Sending multipart/form-data #521
- How to display QOS metrics ? #520
- Allow importing swagger files #519
- stats & counters are reset during test #513
- slack channel for locust dev #511
- Variance/Standard Dev. or something #508
- RPS value drops after a long run #507
- raise an error in Python3 #506
- Function result does not get saved into variable if function call spans two lines #505
- calling taskset and tasks on if else conditions #504
- pip install old version #502
- Documentation for directory structure and working directory for complex locust projects #500
- pydoc.locate breaks after importing locust #499
- How to build locust on local machine #498
- Secure data transfer between master/slave in different geographical regions #491
- Closing old issues and PRs #490
- Proposal: apdex in reports #489
- Problem with nested dictionary #488
- [question] how do you quantify your master/slave need #486
- user spawn too slow #482
- Overly strict dependency on gevent==1.1.1 #479
- Unique user id per locust #476
- Random Resets and Invalid Stats #446
- SSL errors when testing certain HTTPS sites #417
- How to get more info from the load test? #413
- Export exceptions to CSV didn't work #412
- Replaying access pattern #411
- Make logging timestamps etc optional #405
- Reviewing PRs #355
- Optional HTTP Request failure step down #344
- Unix timestamp in stats/requests #332
- Web UI Freezing #307
- Inconsistent stats resetting #299
- Don't warn about pure Python socket when not using distributed mode #276
- Web UI should show what host is being used #270
- locust support testing against HTTP/2 servers ? #264
- Error to login to webapp in Locust #246
- Support for custom time metrics #243
- recommended AWS EC2 instance types? #242
- how to deploy it in heroku or aws ? #241
- ValueError when missing hatchrate #237
- Extra / at start of request paths #235
- SSL broken on Python 2.7.9 #234
- Suggest Python version #231
- Changing locustfile.py on master via UI and having master / slave replication #209
- Option to prevent stats from being reset when all locusts are hatched #205
- PUT requests are shown as GET #204
- Cannot simulate one single user #178
- Feature request: Stepped hatch rate #168
- Having a locust "die" or stop after one task #161
- Request: support concurrent and hatch for web-based startups #153
- Run individual tasks at the same time #151
- Graphical interface to see individual request level graph #144
- Configure target host from web interface #135
- Fixed seed, non-random chance #127
- any objection to making task take a float as opposed to an int? #119
- Feature request: "run through" each test once. #98
- Add Timer / Timers to Web Interface #78
- Recording of rps over time #32
- Add date when test started to run #30
- Make the table header in the web interface sticky #2
Merged pull requests:
- Bump version to 0.8a3 for another pre-release candidate #654 (aldenpeterson-wf)
- Standardize utf8 file coding declarations #652 (mbeacom)
- Sort all Python imports #651 (mbeacom)
- Modify gevent wsgi and libev dependencies #650 (mbeacom)
- Add GH issue template and update readme #614 (aldenpeterson-wf)
- Add ability to write csv stats files #612 (aldenpeterson-wf)
- Fix spelling error in README.md #606 (fiso)
- Bump gevent version #599 (ed1d1a8d)
- Fix formatting issue combining double dashes into single dash #577 (swoodford)
- Add slack signup link to readme #570 (aldenpeterson-wf)
- Fix off by 1 error in stats.py resulting in additional request always being off #566 (aldenpeterson-wf)
- Add more formatting and class links to quickstart page. #557 (alimony)
- Remove unused imports #552 (mbeacom)
- Update installation doc with supported py versions #547 (mirskiy)
- Started working on a more modern and (hopefully) better looking design #541 (heyman)
- Styling of charts + only show charts for total stats + clean up & refactoring of charts JS code #539 (heyman)
- Add units to table #537 (benrudolph)
- Web UI: Free up header space #534 (justiniso)
- Python 3.6 #528 (mbeacom)
- seems sane to not support py26 anymore #515 (ticosax)
- Added introduction of Boomer #510 (myzhan)
- Add charts for RPS and average response time in the WebUI #509 (myzhan)
- docs: clarify locust invocation norms #501 (pwnage101)
- Improve the language in writing-a-locustfile.rst #470 (aknuds1)
- Adds host name to the header #447 (thaffenden)
- Allow --no-web together with --master for automation #333 (undera)
v0.8a1 (2016-11-24)
Closed issues:
- Header not entirely on camel case #503
- Locust starts throwing failures when users > 130 (OS X) #496
- Multiple Locust swarms override each-others stats #493
- loop() got unexpected keyword argument #485
- Problems installing on Mac 10.11.6 #483
- Cannot decode 502 #481
- Locust can not count failure request number in WEB GUI #480
- 【Question】How locust allocate the user number with distributed mode? #478
- Python v3 error: 'StdOutWrapper' object has no attribute 'flush' #475
- [Question] How can I set up a thousand concurrent http server as soon as possible with python? #473
- [Question] How can I control the speed of sending requests? #472
- Get exception during simulating 5000 users on one mechine #471
- 【Question】Can I make request with python requests lib? #469
- 【Question】How can I send https request with locust? #468
- 401 Unauthorized Error using HTTPLocust #466
- Import issue when the locustfile.py contains importing self-defined class sentence #465
- Embedded html resources #464
- Could not find any locustfile! Ensure file ends in '.py' #463
- Contradiction on supported versions #461
- How do I set cookies #458
- Preserve Locust Stats? #457
- locust RPS too low #454
- Python 3.4,run locust error:No module named 'core' #453
- Failure grouping in UI #452
- TypeError: 'str' object is not callable #450
- ERROR/locust.main: No Locust class found! #449
- Locust won't run http request and instead just, skips ahead to the next line in the code??? #444
- add an ability for click actions such as video play button #442
- access to locust frontend from another computer #441
- how can i add some methods to test but don't want restart locust #440
- selenium web driver giving error 'Fire fox has stopped working' while opening firefox window #439
- Location #437
- Locust web interface not starting on Windows #436
- aborting task in on_start #435
- Can I use locust for live streaming load testing #434
- URLs with
\#
in them are not evaluated #433 - In light of #431, is it ok to migrate to pytest? #432
- AttributeError: 'NoneType' object has no attribute 'replace' #431
- Missing tags for versions above v0.7.2 #428
- using interrupt while respecting the min_time #427
- Locust, NTLM, & Requests Sessions #426
- Is their any plan to support python 3.x? #425
- TypeError: __init__() got an unexpected keyword argument 'server_hostname' #424
- Test failures #422
- Automate validation of locust #420
- Factor out remote execution engine #403
- requests library uses "wheel" file #134
Merged pull requests:
- Match min/max_weight equal sign style across project #497 (alimony)
- Use super() for HttpSession init call #494 (detzgk)
- Update gevent==1.1.2 #462 (di)
- Fix document bug concerning '--host' option. #460 (d6e)
- Python 3 compatibility with --no-web option #456 (mrsanders)
- Changes to consolidate errors #451 (schuSF)
- Typo fix in locust API documentation #448 (frntn)
- Python 3 compatibility for slave mode. (Fixes 'locust --slave') #443 (mrsanders)
- Python 3 support #363 (pmdarrow)
v0.7.5 (2016-05-31)
Closed issues:
- SSO on different site support #423
- Mac install locust by pip in error of gevent #421
- can someone help me to build a http request content header #419
- v0.7.4 #407
- Python 3 support #279
v0.7.4 (2016-05-17)
Fixed bugs:
- requests.exceptions.ConnectionError: ('Connection aborted.', ResponseNotReady('Request-sent',)) #273
Closed issues:
- locust not making any request when deployed on docker #415
- Simulating multiple independent user web behaviour #409
- Webclient authentication #406
- Install error on ubuntu 14.04 #402
- Python 3 support needed. #398
- Quick start example using l for a variable name #392
- Could you give me some examples of the schedule tasks? #390
- Rich report format #388
- Pinging and benchmarking utilities #387
- Integration with CI and test frameworks #385
- multisession confusion #382
- why used the requests module #378
- Have you compared the Locust with the Tsung? #377
- Web GUI can't handle many unique URLs - Is it possible to aggregate stats entries? #375
- Gevent gcc error. Unable to install locust #368
- pip install failed mac el capitan #366
- does not work in python 3.4 virtualenv #359
- How do I start a new session #356
- Integrating Locust API with python requests #353
- ar #342
- Unable to install locust on OS X #340
- Locust 0.7.3: TypeError trying to run test #338
- Unable to install locusio #336
- Separate TCP connection for each virtual user #334
- url of this command /web/{var} should have one final output in browser #327
- Load testing a site whose domain name is not pointed/registered . #326
- Load Testing multiple sites on a single VPS. #325
- Python3 support #324
- Support for websockets? #323
- step through locust source #322
- Status reports only shown in terminal, not on the Web interface. #319
- percentiles in /stats/requests? #318
- real-time graphing #317
- locust google group #316
- unlikely response times #315
- rps bottleneck #313
- Are requests asynchronous? #312
- run each task in sequence #311
- ImportError: No module named 'core' #310
- ConnectionError(ProtocolError('Connection aborted.', BadStatusLine("''",)),) #308
- Support multiple test files #304
- Tasks running, no stats collected. #301
- OpenSSL errors when testing HTTPS #300
- Web UI freezes #297
- 250 users on single machine fails #296
- slave not connecting to master and no error reported #294
- Can't start swarming when in master/slave mode on Ubuntu 14.04 #293
- How to interpret RPS on distributed setup? #292
- problem with select library #274
- Slaves can't connect to Master #265
- list supported Python versions in README and setup.py. #260
- Getting import requests.packages.urllib3 error in Google App Engine #259
- Documentation on retrieving real-time stats #230
- Support for scenarios #171
- Would love a swarm_complete event #26
Merged pull requests:
- Release updates for v0.7.4 #418 (justiniso)
- bump version of requests module in setup.py #401 (cgoldberg)
- [#62] Correctly update slave count when drops below 1. #381 (KashifSaadat)
- Documentation: Update writing-a-locustfile.rst #365 (Valve)
- doc fixes #361 (gward)
- Update writing-a-locustfile.rst #337 (reduxionist)
- Lock gevent version #335 (nollbit)
- Fix handler argument names. #314 (doctoryes)
- Update writing-a-locustfile.rst #306 (reduxionist)
- Introduce docs for increasing the max number of open files limit #298 (ericandrewlewis)
v0.7.3 (2015-05-30)
Closed issues:
- Rounding of percentiles (premature optimization?) #255
- Feature request: initiate a test without entering the browser #253
- Environment Variables for Locust playbooks #244
- Failures not detected when web server is shutdown #240
- client.post is not working for https #239
- confused by multiple requests in on_start #236
- Empty stats on get aggregated stats #232
- return_response a valid request argument #229
- Allow developer to reduce unique URLs to their paths for reporting purposes #228
- Locust never gets past 10 req/s, despite the server being much quicker than that #223
- How to send Ajax requestes ? #219
- Trigger UI events #218
- Clients support gzip / deflate ? #215
- nodequery api integration & charting ? #214
- Test run time number of requests / rps ? #213
- Clients support keepalive connections ? #212
- master slave config, master not doing any work ? #211
- multiple slaves of different server specs ? #210
- multiple url tests ? #208
- how to get the recorded data #206
- http proxy support #203
- error report is not included in
--logfile
nor is it available for download as a csv #202 - Stats get corrupted when the number of swarm users reaches the objective #201
- API for invoking load #191
- Locust slaves slowing dying and then coming back to life? #190
- IndexError: list index out of range #166
- Post with JSON data #157
- Python Crash when running with slaves #156
Merged pull requests:
- Update writing-a-locustfile.rst #268 (cristopherchacon)
- changed how request_meta["method"] is set #267 (dantagg)
- list supported Python versions #261 (cgoldberg)
- add host cli arg to quickstart #250 (groovecoder)
- Update what-is-locust.rst #247 (frvi)
- Fixed typo in the quickstart doc. #245 (hirokiky)
- Fixed link to ESN's Twitter page #227 (gentlecat)
- Fix a missing backtick #221 (chrisramsay)
- Fix typo in docs #216 (gregeinfrank)
- Typos in docs. #193 (jfacorro)
- recieve -> receive; locsutfile -> locustfile #183 (stevetjoa)
v0.7.2 (2014-09-25)
Closed issues:
- Parallel tasks? #198
- Ability to schedule a call #197
- Execution order? task lifetime? #195
- CPU bound from locust vs CPU bound from the web app? #188
- testing single page application #187
- failed with AttributeError #185
- Problem running tests #184
- Web UI doesn't work in Firefox #179
- Request name not pertinent in case of redirection #174
- Reuse the code #173
- RPS droping to 0 at the end of the user ramp-up period #172
- Recorder and script generator #170
- got AttributeError while using "with client.get(...) as response" #165
- Request time doesn't include download time. #162
- Error for requests version 2.2.1 #154
- Request: non-zero exit when running --no-web and errors found #152
- Support for tests that use multiple hosts #150
- ImportError: No module named packages.urllib3.response #148
- Slaves not closing the TCP connections properly #137
- Locust support for SNI #136
- User numbers going up and down #131
- Automatically fork into multiple processes when running in --slave mode #12
Merged pull requests:
- Add start and stop hatching events #199 (skinp)
- fixed typo: your're -> you are #182 (stevetjoa)
- choosed -> chosen #181 (mrjf)
- Include method name in percentile distribution reports #176 (fordhurley)
- Redefine err message for locustfile #164 (illogicalextend)
- Fixed typos in events.py example #159 (nawaidshamim)
- Added: favicon, fixed paths. #158 (dotpot)
- Exit 1 when errors are found #155 (jpotter)
v0.7.1 (2014-04-29)
Closed issues:
- Min response time after reset is always 0 #147
- locust shell client does not work in zsh #142
- should catch exceptions by default #141
- question about putting a delay #139
- web ui uses a lot of mem and is quite sluggish at times #133
- Add ability to select which Task to run #130
- Move the download links to the top and make sticky #129
- locust.weight supported, just undocumented? #123
- Support for custom clients #83
Merged pull requests:
v0.7 (2014-01-20)
Fixed bugs:
- gc refcount related crash when loading web UI under Python 2.6.6 #49
Closed issues:
- Different Users #126
- doc updates for main class change from Locust to HttpLocust #116
- collection of exceptions broken since 4ca0eef5 #114
- number locusts must be a multiple of the number of slaves #112
- changing port for distributed zeromq mode #111
- error when running in master mode #110
- python3 compatibility? #107
- ramping.py calls RequestStats.sum_stats() which is no longer a valid call #104
- line endings #101
- Multiple Hosts, Host Function #99
- Sorting does not work on # requests column #97
- Issues with localhost and domain configured in hosts file #96
- Allow self.interrupt() inside on_start #95
- hooking locust and graphite together as a plugin #94
- Serve static files in web.app.route? #93
- Error: Too many files open #92
- stats reset after hatch completes #91
- locust/test/test_average.py present but never run #85
- Add detailed request failure information to the web UI #84
- remove _send_request_safe_mode #82
- Enable different sessions for different users #81
- Does locust support ‘CSV Data Set Config‘ feature like jmeter #79
- fatal error: 'event.h' file not found while installing in virtualenv on OSX 10.8.3 #77
- Testing "Any" system #75
- Custom http_code stats #73
- Need Clarification #70
- It'd be nice to include the machine that a logging message came from #67
- Allowing custom options to passed into tests? #65
- requests >1.0 #61
- pyzmq 13.0.0 breaks distribution #58
- Locust web interface not starting on Windows #57
- Web interface doesn't work #56
- Unit tests LocustRunner(s) and distributed mode #20
- Proclaim Locust HTTP only #17
Merged pull requests:
- fix typo #117 (sanga)
- fix module and variable name clash (traceback refers to a mod so it's a ... #115 (sanga)
- Removes duplicate attribute documentation #106 (djoume)
- Fixes typo in example code #105 (djoume)
- fix typo in downloadable CSV #100 (sghill)
- Documented more 0.7 changes #90 (EnTeQuAk)
- include hostname in log messages #89 (sanga)
- Cleanups (deprecated code, unused imports) #88 (EnTeQuAk)
- Merged gevent/zmq updates, ported to requests >= 1.2 #87 (EnTeQuAk)
- Added option '--only-summary' for only printing stats at the end. #80 (dougblack)
- bump requests dependency to most recent pre 1.0 version (i.e. most recen... #76 (sanga)
- Stats refactoring #74 (heyman)
- Enhancement/url error #72 (krallin)
- Include method name in command line logging #66 (rory)
- use correct python special method name #64 (rory)
- Small fixes #63 (sanga)
- Use shutdown function when num_requests are done #60 (afajl)
- Update docs/api.rst #55 (cbrinley)
- Added argument to options parser indicating on which port to run the web UI #54 (manova)
v0.6.2 (2013-01-10)
Closed issues:
- greenlet error when used distributed locust under Python2.6 #53
- Get fails in clean install on Ubuntu: KeyError: 'start_time' #52
Merged pull requests:
- add docs: Installing Locust on Mac OS #51 (yurtaev)
- Add parent to TaskSet to enable state sharing among hierarchical TaskSets #50 (daubman)
v0.6.1 (2012-12-04)
Closed issues:
- Locust throwing error when reaching NUM_REQUESTS parameter #47
v0.6 (2012-11-29)
Fixed bugs:
- Master node fails to start if a slave node is still running #15
Closed issues:
- Drop the require_once decorator #42
- Improve catch_response feature (was previous: Remove catch_response feature from HttpBrowser) #39
- RPS count drops when master and slaves drift in time #38
- FEAT: add stat support for chunked transfer-encoding #33
- Date or timer for automatic shutdown of test #31
- Option to ignore query parameters on stats #29
- Remove SubLocust and merge into Locust class #16
- Add support for shutting down slaves without restarting master #6
Merged pull requests:
- Change Locust/SubLocust API #43 (heyman)
- Quickstart example was missing import task #41 (natancox)
- Use python-requests as HTTP client in Locust #40 (heyman)
- Addfix #36 (jukart)
v0.5.1 (2012-07-01)
Closed issues:
- loglevel and logfile don't seem to work #25
v0.5 (2012-07-01)
Closed issues:
- Remove Confluence specific task ratio formatter #13
- Add HTTP request method (GET/POST/PUT, etc) to statistics table #3
Merged pull requests:
- Refactoring (separation) of ramping code; Added tooltips for ramping form in ui #28 (HeyHugo)
- Support Basic HTTP Authorization for https requests #27 (corbinbs)
- Add content-disposition with a filename. Fix missing import (warnings). #24 (benjaminws)
- Fixed CSV stats export order #23 (quosa)
- request timing csv endpoint was returning Internal Error #22 (pedronis)
- fix continuous resetting on of stats in master+slaves mode #19 (pedronis)
v0.4 (2011-12-05)
Fixed bugs:
- Total RPS counter does not work #9
- Total median value is zero in the web interface #7
- Wrong failure percentage in statistics #5
- Raising InterruptLocust within with statement + catch_response causes failure #4
Closed issues:
Merged pull requests:
- optional ramping feature; sorting stats by column #11 (HeyHugo)
- Dynamic changing of locust count #10 (HeyHugo)
* This Changelog was automatically generated by github_changelog_generator