-
Notifications
You must be signed in to change notification settings - Fork 524
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Docker Explorer 2.0 #966
Docker Explorer 2.0 #966
Conversation
And rename tag/repo tree items to differentiate remote from local
There's a 'namespaces' api instead of making separate call for user and orgs
And move registerCommands to commands folder
I'm trying 0.6.3-alpha from https://dev.azure.com/ms-azuretools/AzCode/_build/results?buildId=6664 on Win10 with VSC:
This is great. I was wondering if there was anything wrong with my setup before I saw this '2.0' issue.
This works ok. I restarted docker-for-win, to test it. Both showing the messages and automatically reconnecting again.
This is great too.
I don't know if this is the desired behaviour, but I found myself trying it multiple times until I guessed it:
Nothing happens. Due to the checkbox, the last 'Enter' has no effect, although I 'selected' a container with the arrow key. For it to work, I need to press 'Space' before the last 'Enter'. This will select the container. I'd say that requiring to press 'space' is unnecessary when the users want to start/stop/whatever a single container. Note that this does not apply if you do some of the steps with the mouse, because clicking on a container will select it only.
I am not a user of ACR. |
Summary
I set out with the goal to move the Docker explorer over to the shared tree implementation used by our other extensions. It was a bit more of a ...massive... undertaking than I expected because I basically had to tear everything down and rebuild it. In the end, I think I fixed a lot of bugs and improved a lot of things, but most importantly this codebase will be much easier for us to maintain because it's now based on our shared building blocks.
We are going to need to have people (on our team and hopefully outside of our team) bash against this for a little while before releasing. With that in mind, any time spent reviewing this is much appreciated!
Help Wanted! Please follow these instructions to install the latest build from master and let us know what you think!
THE NEW EXPLORER
It features separate views for containers/images/registries - which means you can hide/resize/reorder each view on its own.
It also has in-line error messages when failing to connect, which IMO is much better than that big scary error message we used to have.
THE NEW COMMAND PALETTE
Just like the above, the commands are all grouped based on images/containers/registries. It will also be a one-to-one mapping of the tree. So if you have the tree grouped/sorted/etc., you will see that when running from the command palette.
Since Docker previously had the option for "All Containers", I wanted to maintain and improve on that functionality. Now you will see a multi-select quick pick:
THE NEW ACR TASK VIEW
The old way of viewing tasks was through a web view that honestly wasn't accessible, wasn't consistent with other VS Code experiences, and was going to be annoying to maintain going forward. I moved all tasks into the tree. You can still view properties, copy image digest, and view logs - but you can't write a custom filter for viewing tasks. I still think this is a net-positive experience and we can theoretically add back support for filtering in this new world.
More detailed list of fixes
Leverage tree from shared package
node.label
: Fixes Stop using node.label in the codebase to mean the container/image/etc name #842Leverage wizard from shared package
Leverage consistent error handling/telemetry from shared package
Other: