* explore a simplification of the blockchain priority lock queue
* add some tests
* correct task tracking
* use time.perf_counter for better resolution on windows
* just count an integer for request order retention
* stop using time in the (new) tests as well
* add tests and a couple no covers
* less existing test refactoring
* use a sync PriorityQueue
* switch to deques
* address bugs and simplify priority to deque mapping
* remove unused attribute ._priority_type
* make LockQueu.create() not async
* explain the active element check on wait cancellation
* drop LockQueue._process()
* import final from typing_extensions
* rename LockQueue to PriorityMutex
* remove test from mypy exclusions
* clean up straggling lock references
* ignore test failure case line coverage
* add a monkeypatch test ;[
* remove queued callback feature
* remove todos
* Make `list_to_batches` work with collections instead of lists only
* Move `to_batches` into `chia.util.misc`
* Only support `set` and `list`
* Drop `tests.generator.test_to_batches` exclusion
* Improve type restrictions and be more coverage friendly in tests
* update build_network_protocol_files.py to generate the mypy-compatible files (which were fixed already, but the generator script was not). Specifically, tests/util/test_network_protocol_files.py was changed manually. This makes it possible to rerun the generation without breaking mypy
* run build_network_protocol_files.py in CI to ensure its generated files are up-to-date
* fixup mypy exclusions
* mypy: Build `mypy.ini` config with exclusions dynamically
* Apply suggestions from code review
* Revert suggested `check=True` because `mypy` is expected to fails here
* Only `read_text` once
* Fix exception message
* Don't `touch`
* More `joinpath`
* Revert `newline="\n"`, its python 3.10 only
See https://bugs.python.org/issue23706
* Apply suggestions
* Fail if new issues get introduced
* Print the newly introduces issues
* Handle error codes
* Add `write_file`
* Use `sys.executable`
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* `mypy_failures[:-1]`
* Add an example comment
* Improve failure check
* Drop exclusions after rebase
* Drop one more exclusion after another rebase
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>