Releases: PlotJuggler/plotjuggler_core
plotjuggler_core v0.5.1
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.5.1",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- ci(release): publish Conan binaries for Linux, macOS, and Windows by @facontidavide in #108
- feat(dialog): code-editor caret protocol for cursor-aware completion (0.5.1) by @GNERSIS in #107
Full Changelog: v0.5.0...v0.5.1
plotjuggler_core v0.5.0
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.5.0",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- fix(pj_base): portable float parsing for libc++ (no std::from_chars) by @facontidavide in #99
- feat(pj_base): add CameraInfo + OccupancyGridUpdate canonical builtin types by @facontidavide in #98
- PayloadView syntactic sugar by @facontidavide in #100
- feat(pj_base): centralize string→number parsing via fast_float private dep by @facontidavide in #101
- Datastore query binary search + SPDX/CI hygiene by @facontidavide in #104
- refactor(object_store): lazy fetch returns PayloadView by @pabloinigoblasco in #103
Full Changelog: v0.4.1...v0.5.0
plotjuggler_core v0.4.1
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.4.1",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- feat(pj_base): AssetVideo clip-window (start_ns/end_ns) by @Alvvalencia in #97
New Contributors
- @Alvvalencia made their first contribution in #97
Full Changelog: v0.4.0...v0.4.1
plotjuggler_core v0.4.0
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.4.0",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- chore(license): dual-license — Apache-2.0 SDK, MPL-2.0 engine; add CL… by @facontidavide in #95
- hide private fmt dependency by @facontidavide in #94
- update of plugin SDK by @facontidavide in #96
Full Changelog: v0.3.1...v0.4.0
plotjuggler_core v0.3.1
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.3.1",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- feat(sdk): add ScalarRecord/ObjectRecord for parser-controlled timestamps by @pabloinigoblasco in #92
- feat(dialog-protocol): widget channels + Image codec for the Mosaico toolbox by @GNERSIS in #93
New Contributors
Full Changelog: v0.2.1...v0.3.1
plotjuggler_core v0.3.0
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.3.0",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
Full Changelog: v0.2.1...v0.3.0
plotjuggler_core v0.2.1
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.2.1",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- Release 0.2.1: fix Conan cmake_build_modules + namespaced subdir aliases by @facontidavide in #91
Full Changelog: v0.2.0...v0.2.1
plotjuggler_core v0.2.0
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.2.0",)Link in CMake:
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)See README.md
for available components (base, datastore, plugin_sdk, plugin_host)
and consumer examples.
What's Changed
- docs: add PlotJuggler Marketplace technical specification v1.0.0 by @pabloinigoblasco in #1
- docs: add marketplace architecture, requirements, plan, and user manual by @pabloinigoblasco in #2
- docs: add dummy plugin structure and CI repository strategy by @pabloinigoblasco in #3
- docs: complete marketplace documentation with feature overview and de… by @pabloinigoblasco in #5
- docs: update ExtensionManager design with dependency injection by @pabloinigoblasco in #6
- feat(marketplace): add DownloadManager and ExtensionManager interface by @pabloinigoblasco in #8
- docs(requirements): add F-24/F-25 and registry URL settings feature by @pabloinigoblasco in #10
- Marketplace standalone by @pabloinigoblasco in #7
- feat(plugin_registry): reload plugins after marketplace install/update by @pabloinigoblasco in #11
- fix: cross-platform plugin registry scan by @pabloinigoblasco in #14
- fix(ui): prevent horizontal stretching of status messages by @pabloinigoblasco in #16
- refactor(plugin_registry): smart incremental reload by @pabloinigoblasco in #15
- feat(extension_manager): add default constructor and initComponents() by @pabloinigoblasco in #19
- feat(marketplace): Windows-safe install/update/uninstall staging by @pabloinigoblasco in #22
- feat(protoapp): add mouse wheel zoom to chart by @pabloinigoblasco in #21
- fix(build): install Conan deps from subdirectory conanfiles by @pabloinigoblasco in #23
- feat(sdk): add showMessageBox to DataSource runtime host API by @pabloinigoblasco in #24
- feat(protoapp): multi-select series tree for batch drag-and-drop by @pabloinigoblasco in #17
- fix(protoapp): propagate binding errors to plugins via lastError API by @pabloinigoblasco in #25
- fix(plugin-registry): read additional_encodings from parser manifests by @pabloinigoblasco in #18
- feat(plugin-registry): add listAvailableEncodings method by @pabloinigoblasco in #27
- feat(sdk): early runtime host binding for dialog + listAvailableEncodings vector helper by @pabloinigoblasco in #28
- fix(marketplace): correct category filter values by @pabloinigoblasco in #26
- feat(protoapp): add pan interaction to chart by @pabloinigoblasco in #20
- fix(protoapp): always call loadConfig for streaming sources by @pabloinigoblasco in #29
- feat(sdk): parser dialog injection with config persistence by @pabloinigoblasco in #30
- feat(sdk): add parseEncodingsJson helper for plugins by @pabloinigoblasco in #31
- fix(plugins): guard RTLD_DEEPBIND for macOS compatibility by @pabloinigoblasco in #32
- fix(proto_app): call applyPendingInstalls() on startup by @pabloinigoblasco in #34
- feat(dialog_sdk): add keyboard shortcut support for QPushButton by @pabloinigoblasco in #33
- feat(dialog_sdk): add setDisabledRows support for QTableWidget by @pabloinigoblasco in #35
- fix(marketplace): detect pending install/uninstall state on window open by @pabloinigoblasco in #36
- docs: add Dialog SDK reference with WidgetData and event handlers by @pabloinigoblasco in #37
- refactor(plugin-registry): remove additional_encodings, use encoding array by @pabloinigoblasco in #38
- docs: toolbox porting SDK gap analysis by @pabloinigoblasco in #40
- feat(proto-app): add toolbox plugin loading to PluginRegistry by @pabloinigoblasco in #39
- feat(dialog_sdk): add chart preview widget support by @pabloinigoblasco in #41
- refactor: enforce array type for encoding field in plugin manifests by @pabloinigoblasco in #46
- feat: add code editor widget support to dialog SDK by @pabloinigoblasco in #43
- fix(dialog-sdk): wire buttonBox for QDialog roots by @pabloinigoblasco in #50
- feat(dialog-sdk): add per-series color and interactive chart legend by @pabloinigoblasco in #51
- feat(dialog-sdk): add setButtonIcon for inline SVG on buttons by @pabloinigoblasco in #52
- feat: add ToolboxSession with non-modal dialog support by @pabloinigoblasco in #44
- feat(proto-app): add Tools menu with dynamic toolbox plugin discovery by @pabloinigoblasco in #55
- fix(toolbox): persist config on dialog close regardless of accept/reject by @pabloinigoblasco in #54
- feat(dialog-sdk): add Python syntax highlighter and runtime language swapping by @pabloinigoblasco in #56
- feat: add drag-and-drop support for dialog plugins - maybe close by @pabloinigoblasco in #45
- feat(dialog-sdk): interactive zoom on ChartPreviewWidget with onChartViewChanged event by @pabloinigoblasco in #57
- fix(dialog-sdk): disable acceptDrops on ChartPreviewWidget for DropEventFilter compatibility by @pabloinigoblasco in #58
- fix(series_tree_model): include topic name in data labels by @pabloinigoblasco in #59
- feat(sdk): add registerColorMap/unregisterColorMap to toolbox host ABI by @pabloinigoblasco in #60
- feat(pj_base): add platform helpers for env and user data dir by @pabloinigoblasco in #61
- feat(colormap): add ColorMapRegistry service and wire to chart panel by @pabloinigoblasco in #62
- feat(sdk): add on_data_changed hook to toolbox vtable by @pabloinigoblasco in #63
- feat(pj_base): add getSharedLibDir() to platform.hpp by @pabloinigoblasco in #64
- fix(pj_media): pull libjpeg-turbo through Conan instead of pkg-config by @pabloinigoblasco in #66
- fix(library_loader): allow plugins to ship sibling DLLs on Windows by @pabloinigoblasco in #67
- fix(proto-app): refresh Tools menu after marketplace install/uninstall by @pabloinigoblasco in #65
- fix(cmake): build pj_media inside PJ_BUILD_DATASTORE guard by @pabloinigoblasco in #70
- fix(pj_marketplace): advance update queue after staging on Windows by @pabloinigoblasco in #69
- Feat/v4 abi by @pabloinigoblasco in #68
- fix(dialog-sdk): suppress clang -Wunused-function on dialogVtableFor specialisation by @pabloinigoblasco in #71
- Drop/manifest sidecar by @facontidavide in #74
- fix(plugins): enforce -fvisibility=hidden on all plugin .so targets by @pabloinigoblasco in #73
- feat(plugins): enforce dialog-vtable contract at plugin load time by @facontidavide in #77
- fix(marketplace): hide registry entries with no artifact for current platform by @Pabl...
plotjuggler_core v0.1.0
First packaged release of plotjuggler_core as a Conan recipe + installable CMake package.
Install via Conan
conan remote add plotjuggler https://conan.cloudsmith.io/plotjuggler/plotjugglerAdd to your conanfile.py / conanfile.txt:
requires = ("plotjuggler_core/0.1.0",)Use in CMake
find_package(plotjuggler_core REQUIRED COMPONENTS plugin_sdk)
target_link_libraries(my_plugin PRIVATE plotjuggler_core::plugin_sdk)
pj_emit_plugin_manifest(my_plugin
FAMILY data_source
MANIFEST_FILE manifest.json
)Components
plotjuggler_core::base— vocabulary types (always available)plotjuggler_core::datastore— columnar engine (optional)plotjuggler_core::plugin_sdk— plugin-author surface (default)plotjuggler_core::plugin_host— host-side loaders (optional)
The plugin_sdk component also ships PjPluginManifest.cmake via Conan's cmake_build_modules, so pj_emit_plugin_manifest() is available without copying the helper.
See PR #89 for the full change set.