# `derivepassphrase` bug concurrency-audit
???+ bug-success "Bug details: Audit `derivepassphrase` for concurrency/thread-safety issues"
Class | bug | This is clearly an actual problem we want fixed.
|
---|
Priority | high | This should be fixed in the next release.
|
---|
Difficulty | tricky | Needs many tuits.
|
---|
Present-in | 0.1.0 0.1.1 0.1.2 0.2.0 0.3.0 0.3.1 0.3.2 0.3.3 0.4.0
|
---|
Fixed-in | [a4ad05723414662d9df1607034c5dd7d646f1b49](https://github.com/the-13th-letter/derivepassphrase/commit/a4ad05723414662d9df1607034c5dd7d646f1b49) (0.5)
|
---|
Blocks | [concurrency-testing-in-test-suite](concurrency-testing-in-test-suite.md)
|
---|
`derivepassphrase` is not explicitly written with concurrency in mind. This may come around to bite us when the “free-threaded“ build of Python no becomes a main feature.
Irrespective of that, it is a good idea anyway to have a clear picture on which parts of `derivepassphrase` are not threadsafe, and to which degree.
**Therefore**, audit `derivepassphrase` for concurrency/thread-safety issues.
--------
Off the top of my head, the main parts of `derivepassphrase` in the `export` and `vault` subcommands each construct their own data and only compute a result or read from the data, so there are no read-write or write-write dependencies.
The exceptions to this are the global logging and warnings handlers, which modify global state, and the `--config` option to `vault`, which writes back file contents.