Skip to content

Implement a way to pass state to extension for loading #1789

Open
@ktbee

Description

@ktbee

Expected Behavior

Extensions should have the state they need to load successfully.

Actual Behavior

Sometimes extensions need state that is stored on the target (as is the case for the video sensing extension), but targets aren't installed until after extensions are installed. This is a particular issue for the future when extensions become asynchronous.

Potential solution

Create proxy objects for state that an extension needs, and pass that object to the extension when it's created. The state might not be fully populated when the proxy object is created, but its references to the right place to get state will allow the extension to get that information at a later date.

One thing to consider is how extensions will know when this state changes (ie when a different project loads) and how to make this change observable.

This issue is based on an offline conversation with @kchadha, @cwillisf, and @mzgoddard. Let me know if you have other thoughts on this or if I missed something!

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions