Skip to content

Commit e1f8cb8

Browse files
facontidavideclaude
andcommitted
chore(release): bump version to 0.11.0
MINOR: backward-compatible API additions for static (no-dlopen) plugin linking — the static plugin registry + static dialog variant used by the Qt-for-WebAssembly build. All already-built plugins keep working unchanged. Also normalize clang-format (backslash-continuation alignment) on the static-plugin macro headers. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent db579f2 commit e1f8cb8

6 files changed

Lines changed: 46 additions & 46 deletions

File tree

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ endif()
118118
if(PJ_INSTALL_SDK)
119119
include(CMakePackageConfigHelpers)
120120

121-
set(PJ_PACKAGE_VERSION "0.10.0")
121+
set(PJ_PACKAGE_VERSION "0.11.0")
122122
set(PJ_PACKAGE_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/plotjuggler_sdk)
123123

124124
install(EXPORT plotjuggler_sdkTargets

conanfile.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
plugin_sdk — umbrella for plugin authors (base + dialog SDK + parser SDK)
77
plugin_host — umbrella for host loaders (data_source/parser/toolbox/dialog)
88
9-
A consuming Conan recipe declares e.g. `plotjuggler_sdk/0.10.0` and then:
9+
A consuming Conan recipe declares e.g. `plotjuggler_sdk/0.11.0` and then:
1010
1111
find_package(plotjuggler_sdk REQUIRED COMPONENTS plugin_sdk)
1212
target_link_libraries(my_plugin PRIVATE plotjuggler_sdk::plugin_sdk)
@@ -30,7 +30,7 @@
3030

3131
class PlotjugglerSdkConan(ConanFile):
3232
name = "plotjuggler_sdk"
33-
version = "0.10.0"
33+
version = "0.11.0"
3434
# Apache-2.0 covers the whole SDK (pj_base + pj_plugins). See LICENSE.
3535
license = "Apache-2.0"
3636
url = "https://github.com/PlotJuggler/plotjuggler_sdk"

pj_base/include/pj_base/sdk/toolbox_plugin_base.hpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -254,17 +254,17 @@ class ToolboxPluginBase {
254254
// --- Static-link variant (WASM / no dlopen) --- see data_source_plugin_base.hpp
255255
#ifdef PJ_STATIC_PLUGINS
256256
#undef PJ_TOOLBOX_PLUGIN
257-
#define PJ_TOOLBOX_PLUGIN(ClassName, manifest) \
258-
const PJ_toolbox_vtable_t* pj_static_get_toolbox_vtable_##ClassName() noexcept { \
259-
static const PJ_toolbox_vtable_t* vt = PJ::ToolboxPluginBase::vtableWithCreate( \
260-
[]() noexcept -> void* { \
261-
try { \
262-
return new ClassName(); \
263-
} catch (...) { \
264-
return nullptr; \
265-
} \
266-
}, \
267-
manifest); \
268-
return vt; \
257+
#define PJ_TOOLBOX_PLUGIN(ClassName, manifest) \
258+
const PJ_toolbox_vtable_t* pj_static_get_toolbox_vtable_##ClassName() noexcept { \
259+
static const PJ_toolbox_vtable_t* vt = PJ::ToolboxPluginBase::vtableWithCreate( \
260+
[]() noexcept -> void* { \
261+
try { \
262+
return new ClassName(); \
263+
} catch (...) { \
264+
return nullptr; \
265+
} \
266+
}, \
267+
manifest); \
268+
return vt; \
269269
}
270270
#endif

pj_plugins/dialog_protocol/include/pj_plugins/sdk/dialog_plugin_base.hpp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -313,23 +313,23 @@ PJ_borrowed_dialog_t borrowDialog(DialogT& dialog) noexcept {
313313
// any in-binary caller.
314314
#ifdef PJ_STATIC_PLUGINS
315315
#undef PJ_DIALOG_PLUGIN_WITH_MANIFEST
316-
#define PJ_DIALOG_PLUGIN_WITH_MANIFEST(ClassName, ManifestJson) \
317-
inline const PJ_dialog_vtable_t* pj_static_get_dialog_vtable_##ClassName() noexcept { \
318-
static const PJ_dialog_vtable_t* vt = PJ::DialogPluginBase::vtableWithCreate( \
319-
[]() noexcept -> void* { \
320-
try { \
321-
return static_cast<PJ::DialogPluginBase*>(new ClassName()); \
322-
} catch (...) { \
323-
return nullptr; \
324-
} \
325-
}, \
326-
ManifestJson); \
327-
return vt; \
328-
} \
329-
namespace PJ { \
330-
template <> \
331-
[[maybe_unused]] inline const PJ_dialog_vtable_t* dialogVtableFor<ClassName>() noexcept { \
332-
return pj_static_get_dialog_vtable_##ClassName(); \
333-
} \
316+
#define PJ_DIALOG_PLUGIN_WITH_MANIFEST(ClassName, ManifestJson) \
317+
inline const PJ_dialog_vtable_t* pj_static_get_dialog_vtable_##ClassName() noexcept { \
318+
static const PJ_dialog_vtable_t* vt = PJ::DialogPluginBase::vtableWithCreate( \
319+
[]() noexcept -> void* { \
320+
try { \
321+
return static_cast<PJ::DialogPluginBase*>(new ClassName()); \
322+
} catch (...) { \
323+
return nullptr; \
324+
} \
325+
}, \
326+
ManifestJson); \
327+
return vt; \
328+
} \
329+
namespace PJ { \
330+
template <> \
331+
[[maybe_unused]] inline const PJ_dialog_vtable_t* dialogVtableFor<ClassName>() noexcept { \
332+
return pj_static_get_dialog_vtable_##ClassName(); \
333+
} \
334334
}
335335
#endif // PJ_STATIC_PLUGINS

pj_plugins/include/pj_plugins/sdk/message_parser_plugin_base.hpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -380,17 +380,17 @@ class MessageParserPluginBase {
380380
// --- Static-link variant (WASM / no dlopen) --- see data_source_plugin_base.hpp
381381
#ifdef PJ_STATIC_PLUGINS
382382
#undef PJ_MESSAGE_PARSER_PLUGIN
383-
#define PJ_MESSAGE_PARSER_PLUGIN(ClassName, manifest) \
384-
const PJ_message_parser_vtable_t* pj_static_get_message_parser_vtable_##ClassName() noexcept {\
385-
static const PJ_message_parser_vtable_t* vt = PJ::MessageParserPluginBase::vtableWithCreate(\
386-
[]() noexcept -> void* { \
387-
try { \
388-
return new ClassName(); \
389-
} catch (...) { \
390-
return nullptr; \
391-
} \
392-
}, \
393-
manifest); \
394-
return vt; \
383+
#define PJ_MESSAGE_PARSER_PLUGIN(ClassName, manifest) \
384+
const PJ_message_parser_vtable_t* pj_static_get_message_parser_vtable_##ClassName() noexcept { \
385+
static const PJ_message_parser_vtable_t* vt = PJ::MessageParserPluginBase::vtableWithCreate( \
386+
[]() noexcept -> void* { \
387+
try { \
388+
return new ClassName(); \
389+
} catch (...) { \
390+
return nullptr; \
391+
} \
392+
}, \
393+
manifest); \
394+
return vt; \
395395
}
396396
#endif

recipe.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
schema_version: 1
22

33
context:
4-
version: "0.10.0"
4+
version: "0.11.0"
55

66
package:
77
name: plotjuggler_sdk

0 commit comments

Comments
 (0)