Package Manager should automatically update components list when new dependencies are added
Is your feature request related to a problem? Please describe.
This is related to discussion in the following issue: https://github.com/microsoft/botbuilder-dotnet/issues/5674
Per discussion with @clearab and @tracyboehrer, the ask is to have upstream sources responsible for managing dependencies for bot applications to automatically update the list of components when adding new dependencies by checking for the presence of code artifacts (DLLs, script files, etc) within the referenced dependency.
Describe the solution you'd like
Full discussion outlining ideal desired solution: https://github.com/microsoft/botbuilder-dotnet/issues/5674#issuecomment-861753852
Describe alternatives you've considered
N/A
Additional context
Please reach out to @clearab for any additional context.
@chrimc62 How can we modify dialogmerge to have it send an explicit signal about whether a component has a code component vs one that only contains exported assets?
I know we already have flags for includesSchema and includesExports -- I think the problem is that components can include code but NOT schema. I believe an example of this would be a middleware component - @clearab can you confirm?
Yes, middleware is a good example requiring component registration, but no schema. @johnataylor might be able to list some others.
The more problematic is a component that doesn't have code or schema. Just declarative assets. If that component is added to Runtime, it will fail to start. That is, if a component is registered, and there is code (ex. a DLL), and there is a BotComponent, it's fine. If there is a DLL and no BotComponent, a PR has been submitted to log that but still continue.
But the declarative only scenario is still an issue.