microsoft / vscode-tools-for-ai

Azure Machine Learning for Visual Studio Code, previously called Visual Studio Code Tools for AI, is an extension to easily build, train, and deploy machine learning models to the cloud or the edge with Azure Machine Learning service.
Other
321 stars 91 forks source link

Refactoring for AI Studio extension #2299

Closed tbombach closed 4 months ago

tbombach commented 5 months ago

We want to refactor our common packages so that they can be reused for all of our extensions. Let's start with the most straightforward packages as the P0 for this task:

If there's time, we can refactor out other packages as a P1:

I think it makes the most sense to have a separate repository that has all of these packages as a library and publish them to a private NPM registry in the OnlineServices ADO org. Then they can be a package.json dependency. I'm open to other solutions if they make more sense though (e.g. git submodules).

shsuman commented 4 months ago
shsuman commented 4 months ago

Detailed investigation led to the following conclusions:

  1. Except logger, every service is tightly coupled with the extension specifics
  2. Decoupling it would require losing type safeties which have been helpful in avoiding runtime errors
  3. We will instead investigate a mono repo scenario which seems to more suitable for our needs.

Closing in favor of https://github.com/microsoft/vscode-tools-for-ai/issues/2319