Commit Graph
17 Commits
Author SHA1 Message Date
7a054c223f add unload with dependents method (#112)
* add unload with dependents method

* address second-round PR review comments

- plugin_registry.cpp: registerPlugin always writes dependencies and
  recomputes reverse edges (previously gated on !empty, which kept
  dependents stale when a plugin was registered with {} after another
  had already declared a dep on it, and also left callers with no way
  to clear forward edges).
- plugin_manager.cpp: getDependencies filters to known modules so the
  output matches the "among known modules" contract the header
  documents. pluginDependencies can return raw manifest names that
  aren't installed; filter at this boundary.
- README.md: thread-safety section no longer claims logos_core_refresh_plugins
  is serialised by the load/unload mutex — it isn't; it goes through the
  registry's reader-writer lock.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Update src/logos_core/plugin_registry.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-16 15:11:44 -03:00
Iuri Matias 198c261b5a add more tests to catch potential regressions (#107)
* add more tests to catch potential regressions

* remove qt from the tests

remove qt from the tests

revert changes made to src; update tests
2026-04-09 15:38:57 -04:00
Iuri Matias 608a11394f Replace process stats + fix existing issue with process stats + add regression test (#105)
* update process stats

* fix issue with module state disapearing on discovery refresh

* update flake
2026-04-09 10:30:33 -04:00
Iuri Matias 0d1e47f123 use new logos module methods to simplify getting name and dependencies (#90) 2026-03-27 14:22:00 -04:00
Iuri Matias c45417b6e3 Reorganize plugin manager into clearer files with defined responsibility; move (mostly) from qt json to nlohmann_json (#89)
* remove unused methods

* separate plugin manaager into separatge files with better defined responsibility

* move from Qt JSON to nlohmann_json
2026-03-27 12:33:38 -04:00
Iuri Matias 010e75814f simplify logoscore_lib, move some qt specific code (#88)
* simplify logos_core lib

* replace qFatal

* avoid qt types on logos_core.cpp

* move app lifecylce qt specific code to its own folder

* move qt specific process management code

* ensure function signatures are cpp types

* fixes potential leaks; iterator invlidation; remove unimplemented declaration
2026-03-27 09:43:09 -04:00
Dario Lipicar 0ed7848d11 use package manager lib (#86) 2026-03-26 18:53:05 -03:00
Iuri Matias 28700caf10 liblogos cleanup (wip) (#85)
* simplify app lifecycle; move to plugin manager

* simplify code; remove core_context and logos_core_internal and scope vars

* remove isAppOwnedByUs

* remove unused methods
2026-03-25 21:09:59 -04:00
Iuri MatiasandLogos Workspace 9a17418613 Abstract proxy api (#83)
* abstract/move some of proxy api logic to cpp-sdk

* use qFatal

* remove jsonParamToQVariant

* simplify using qFatal

* remove old interface.h use logos-module

* remove local code for now (will be re-added later)

* remove unnecessary methods and qDebugs

* update flake

---------

Co-authored-by: Logos Workspace <logos@workspace.local>
2026-03-25 09:31:06 -04:00
Iuri Matias 39b3711a83 remove outdated scripts and folders; simplify cmakliests; remove old static module methods (#80)
* remove outdated scripts and folders

* simplify cmakelists

* remove old static module methods
2026-03-24 13:55:09 -04:00
Iuri MatiasandLogos Workspace 4af040e19c Finish Abstraction & Refactor (Ongoing) - part 1 (#72)
* use abstracted logos registry isntead of qt registry

* clean: remove for now Q_OS_WIn and Q_OS_IOS

* use LogosObject instead of QObject

* remove core manager

* remove annoying recurrent logs

* update flake

---------

Co-authored-by: Logos Workspace <logos@workspace.local>
2026-03-23 13:55:48 -04:00
Dario Lipicar e318b6a494 discriminate dev and portable variants (#73) 2026-03-19 11:37:52 -03:00
Dario Lipicar 19d29d4ef9 adapt to new subdirectory-based plugin installation (#59) 2026-02-23 15:32:58 -03:00
Iuri Matias 855543ac0f don't load a module dependency if it has already been loaded 2026-02-03 16:37:59 -05:00
Iuri Matias 9dac7c244a add lib api to auto load dependencies 2026-02-03 11:29:38 -05:00
Iuri Matias 112505cb6a reduce 'implementation tests' for plugin_manager 2026-01-22 15:08:47 -05:00
Iuri Matias 857912a472 add tests for plugin_manager and clean it up a bit 2026-01-22 14:56:51 -05:00