Rich pointed out that making thread_model dynamic even for plugins
makes some sense, so here is the code for doing it for 'sh'.
I'm less confident on how to do it for OCaml and Rust (not to mention
that those allow the plugin to already compile in their model, rather
than the language binding glue forcing a model). The other languages
(lua, perl, python, ruby) still need to be adjusted to use the v2 API,
although they could support this one even without implementing v2.
Eric Blake (2):
plugins: Add .thread_model callback
sh: Implement .thread_model callback
docs/nbdkit-plugin.pod | 33 ++++++++++++++++++---
plugins/sh/nbdkit-sh-plugin.pod | 15 ++++++++++
include/nbdkit-plugin.h | 2 ++
plugins/sh/sh.c | 51 +++++++++++++++++++++++++++++++--
server/plugins.c | 12 +++++++-
tests/test-eflags.sh | 49 ++++++++++++++++++++-----------
6 files changed, 139 insertions(+), 23 deletions(-)
--
2.20.1