Skip to content

fix: cross-platform plugin registry scan#14

Merged
pabloinigoblasco merged 1 commit into
developmentfrom
fix/plugin-registry-cross-platform
Mar 26, 2026
Merged

fix: cross-platform plugin registry scan#14
pabloinigoblasco merged 1 commit into
developmentfrom
fix/plugin-registry-cross-platform

Conversation

@pabloinigoblasco
Copy link
Copy Markdown
Collaborator

Summary

  • Add PlatformUtils::pluginExtension() to return the correct shared library extension for the current platform
  • Update plugin registry scan to use this helper instead of hardcoding .so

Problem

The plugin registry was hardcoded to scan for .so files only, which works on Linux but fails on Windows (.dll) and macOS (.dylib).

Solution

Add a cross-platform helper that returns the correct extension based on compile-time platform detection:

  • Linux: .so
  • Windows: .dll
  • macOS: .dylib

Test plan

  • Run ./build.sh --debug && ./test.sh — all tests pass
  • On Windows: verify plugins with .dll extension are discovered
  • On macOS: verify plugins with .dylib extension are discovered

Add PlatformUtils::pluginExtension() to return the correct shared library
extension for the current platform (.so, .dll, .dylib). Update plugin
registry scan to use this helper instead of hardcoding ".so".

This enables the plugin loader to find plugins on Windows and macOS.
@pabloinigoblasco pabloinigoblasco merged commit 74b5cb0 into development Mar 26, 2026
2 checks passed
pabloinigoblasco added a commit that referenced this pull request Mar 26, 2026
Integrate cross-platform plugin extension from PR #14 into smart reload logic.
Use PlatformUtils::pluginExtension() instead of hardcoded ".so" extension.
@facontidavide facontidavide deleted the fix/plugin-registry-cross-platform branch May 4, 2026 12:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant