OpenSite/Guides/Build a native plugin: Difference between revisions

From BathAfrica Documentation
Jump to navigation Jump to search
Publish Cursor documentation reconciled with OpenSite source 77c3fee; tests not rerun
 
Use BathAfrica sidebar contents without duplicate inline contents box
Line 1: Line 1:
__NOTOC__
{{BathAfrica Tutorial
{{BathAfrica Tutorial
|review=Development documentation for OpenSite 0.0.1, source snapshot 77c3fee (Phase 13C). Reviewed against implementation on 29 October 2026. Tests and the Windows desktop were not rerun for this publication; this is not a released-product support claim.
|review=Development documentation for OpenSite 0.0.1, source snapshot 77c3fee (Phase 13C). Reviewed against implementation on 29 October 2026. Tests and the Windows desktop were not rerun for this publication; this is not a released-product support claim.

Revision as of 13:12, 29 October 2026


Review notice: Development documentation for OpenSite 0.0.1, source snapshot 77c3fee (Phase 13C). Reviewed against implementation on 29 October 2026. Tests and the Windows desktop were not rerun for this publication; this is not a released-product support claim.

Build the native sample from an installed SDK and run tool.ping.

Stable identifier
sdk.build-native-plugin

Prerequisites

Matching installed headless OpenSite SDK, dependency prefix, CMake/Ninja and Visual Studio 2026 x64 toolset 14.51 for the reviewed configuration. Release uses cpython-3.14; Debug uses cpython-3.14d. A historical toolset-14.44 bundle is not a compatible replacement for the 14.51 host.

Steps

From a configured checkout, build and install the matching Release SDK to an example prefix such as C:\OpenSite-SDK. Configure C:\OpenSite-SDK\share\opensite\examples\plugins\standalone in a separate build directory with CMAKE_PREFIX_PATH set to that SDK and OPENSITE_DEPENDENCY_PREFIX set to the matching extracted dependency prefix. Build it, then place sample_native.dll and opensite-plugin.json under C:\plugins\sample.native. Run C:\OpenSite-SDK\application\OpenSiteConsole.exe --development-host --plugins C:\plugins --command sample_native/tool.ping. These paths are examples; do not mix SDK or runtime configurations.

Expected result

The process prints pong.

Limitations

The manifest sdk_api must match the host (0.0.3 in this snapshot), together with the build configuration and compiler contract. The native library remains mapped until process exit. Ping has no engineering capability; span requires the explicit development host in this sample. This headless sample does not create a desktop menu or package a distributable GUI SDK.


Documentation basis

Source-reviewed against development commit 77c3fee13944bcc4b5d487c77eb1f82fbe4c6ea7, branch feature/phase-13c-properties-python-expressions. This review inspected the implementation and repository evidence; it did not run the Windows application or repeat CTest.

  • docs/development/Plugin-SDK.md
  • examples/plugins/standalone/CMakeLists.txt
  • src/plugins/plugin_host.cpp

OpenSite overview · Reference · Guides