Blobs make the request-application command unnecessary: Users should now be able to just start using an existing application on any chain:
Creating an application should create a new application description blob, whose key is the application ID.
Registering an application with a given ID on a chain involves reading the blob with that ID, and storing the description in the chain state's application registry. SystemMessage::RegisterApplications can be removed now, since this should happen whenever an application is first used on a chain.
(Registering an application still needs to recursively register all its dependencies, too.)
Blobs make the
request-application
command unnecessary: Users should now be able to just start using an existing application on any chain:Creating an application should create a new application description blob, whose key is the application ID.
Registering an application with a given ID on a chain involves reading the blob with that ID, and storing the description in the chain state's application registry.
SystemMessage::RegisterApplications
can be removed now, since this should happen whenever an application is first used on a chain.(Registering an application still needs to recursively register all its dependencies, too.)