Bring lifetime under test. Also, subclass MemcachedStore for MemoryStore (just use the MemcachedMock instead of Memcached).
- This lets me maintain only one set of tests. Also, the lifetime stuff will be important for some new use cases I working on.
Lifetime is now an option on ExpressBrute, not MemcachedStore and MemoryStore.
- This allows stores to be reused by multiple ExpressBrute instances without having different store instances, while allowing those instances to have different lifetimes.
- Also allows for reasonable defaults to be chosen based on the the other ExpressBrute options (minWait, maxWait, freeRetries) to prevent it from being faster to wait out the lifetime rather than continuing to make requests every maxWait time period.
Add support for “getMiddleware” as well as multiple keys. Also support multiple brute instances on the same request.
- Breaking API changes introduce, but should be much more powerful now.
- Prevent is now just a redefined middleware generated from .getMiddleware
- Part of this also included hashing the key to prevent collisions and avoid really long keys.
- Added some documentation of a complex example that uses these new features.