Skip to content

Plugin system #9

@FichteFoll

Description

@FichteFoll

this is a changing post with our todo list

Plugins should:

  • be able to hook into pretty much every event or functionality so that the core can remain as slim as possible
  • use asyncio
  • have dependencies that we resolve
  • be separated in namespaces (and systems) for core and user plugins
  • be able to specify conflicting plugins, in which case the plugin isn't load and an error emitted

For the future:

  • be reloadable, thus have unload and reload handlers (or one handler with a param)
  • auto-reload if changed on-disk. Reloads of dependencies need to cascade (unload dependant plugins first, recursively)

Questions:

  • Where should plugins be sourced from? Specific directory or user configurable? Multiple locations, e.g. "core plugin" and "user plugin"?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions