From 6cc6f61ad16d067fe2f1f18b3ec117b00160c4ba Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Sun, 9 Jun 2019 10:59:35 +1000 Subject: [PATCH] Speed up startup time Currently the thing most slowing down startup is calling docker-compose config --hash="*" Even calling docker-compose config --services, which only returns service names, takes about half a second. So that's the main bottleneck. We could try and directly obtain the service names, but we'd then need to have our own algorithm for composing all the docker-compose files being used, and that gives us more stuff to maintain --- pkg/gui/services_panel.go | 2 +- pkg/gui/view_helpers.go | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pkg/gui/services_panel.go b/pkg/gui/services_panel.go index 155e22d0..e09e1177 100644 --- a/pkg/gui/services_panel.go +++ b/pkg/gui/services_panel.go @@ -57,7 +57,7 @@ func (gui *Gui) handleServiceSelect(g *gocui.Gui, v *gocui.View) error { service, err := gui.getSelectedService() if err != nil { - return err + return nil } key := service.ID + "-" + gui.getServiceContexts()[gui.State.Panels.Services.ContextIndex] diff --git a/pkg/gui/view_helpers.go b/pkg/gui/view_helpers.go index 4e96b879..6d934712 100644 --- a/pkg/gui/view_helpers.go +++ b/pkg/gui/view_helpers.go @@ -13,9 +13,7 @@ import ( var cyclableViews = []string{"status", "services", "containers", "images"} func (gui *Gui) refreshSidePanels(g *gocui.Gui) error { - if err := gui.refreshContainersAndServices(); err != nil { - return err - } + // not refreshing containers and services here given that we do it every few milliseconds anyway if err := gui.refreshImages(); err != nil { return err }