Motivations behind the soft deletion of streams feature?

What are the motivations of having implemented the soft deletion feature for streams?
Is it just like a security measure for production envs?

Are there other interesting use cases?

Actually I realize that once the stream is hard deleted it is gone forever and the stream name can not be used anymore.
If trying to add an event to a hard deleted stream it will answer with 410 Gone.

I am actually building a Client and would like to reset the state of GES on every integration test.

Is there a way to allow to re-use a deleted stream as if it never existed?

You could use in memory mode for development purposes. e.g. start the cluster with
–mem-db=true

``

What environment are you building the client for and in what language?

I am building a PHP client, I am not quite satisfied of what is actually available.
I am starting with an http client the get a grasp of the basic behaviours of GES, and will then dig into a tcp client.

I am using this docker image for testing purposes: https://github.com/adbrowne/dockerfiles

I think I am just going to rebuild the container when necessary for now.

Thx for the --mem-db=true tip.

We will be releasing an official docker image soon. You can keep an eye out on the progress of this here https://github.com/EventStore/EventStore/issues/755

Subscribed! Thank you!

No because this would totally break any idea of caching/immutability

And to be clear *without restart

I get it. Thank you.