diff --git a/CHANGELOG.md b/CHANGELOG.md index a4251e1f4c3cf780e40e3de77ffb4792a16b9f8f..f55085ca046293aeb89f6bbbb73c948560837bc6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,5 @@ -The changelog is kept as [release notes](https://git.dms-serwis.com.pl/smokserwis/coolamqp/-/releases) -on GitHub. This file serves to only note what changes -have been made so far, between releases. +Previous release notes are hosted on [GitHub](https://github.com/smok-serwis/coolamqp/releases). +Since v1.3.2 they'll be put here and in release description. # v1.3.2 @@ -8,3 +7,4 @@ have been made so far, between releases. * compile_definitions will now depend on requests * added support for infinite (None) timeouts during start * stress tests will run for 120 seconds now +* stress tests will be harder \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 20e2f43cce68f53caaf728aaf513e99ad53a9357..411519fff2cb111d7077a455887fb30cd545df95 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,8 +1,7 @@ # Contributing guide -1. Keep it unit tested. - 1.1. If it's cool af, you don't have to. -2. Exhaustive pydoc. +1. Keep it unit tested, so that coverage doesn't fall down too much. +2. Exhaustive pydoc. Remember to update the [docs/](docs/). 3. If you introduce any gotchas, document them in [docs/](docs/). 4. We aim to support Python 2.7 as long as possible, keep that in account. diff --git a/stress_tests/client.py b/stress_tests/client.py index d947943f2a1cd6be6ee76bcfb166b6c3d2de1e86..74880cc74f985f9502174f772f99bd58521b6507 100644 --- a/stress_tests/client.py +++ b/stress_tests/client.py @@ -6,7 +6,7 @@ import uuid from collections import deque from queue import Empty -from satella.coding.concurrent import TerminableThread +from satella.coding.concurrent import TerminableThread, ThreadCollection from coolamqp.clustering.events import ReceivedMessage, NothingMuch from coolamqp.objects import Queue, Message @@ -116,9 +116,13 @@ def run(client_notify, result_client, server_notify, server_result): lftf = LogFramesToFile('client.txt') amqp = connect(on_fail=result_client, log_frames=lftf) - cad = ConnectAndDisconnectThread(amqp) - cad.start() + tc = ThreadCollection() + for i in range(3): + cad = ConnectAndDisconnectThread(amqp) + tc.add(cad) + + tc.start() started_at = time.monotonic() terminating = False while not terminating and (time.monotonic() < started_at + RUNNING_INTERVAL): # run for however long is required @@ -130,6 +134,7 @@ def run(client_notify, result_client, server_notify, server_result): except KeyboardInterrupt: break + tc.terminate().join() server_notify.put(None) lftf.close()