Remove vendoring, and change Close behaviour
This release has two points:
- Remove vendoring and continue with modules only. I consider this not breaking as this is a possibility since Go 1.11 and is not an issue on the current Go 1.13 and 1.14 build.
- Fixed issue #28: call
expirationCallback
automatically oncache.Close()
Note that while all expirationCallback
routines are called for all items in the cache on cache.Close()
there is no synchronized wait. This is the current behavior for expiration at runtime. It's up to the cache creator to decide whether to built in synchronization for a full clean shutdown. See TestCache_ExpirationOnClose(t *testing.T) for a sample with synchronization.