edgedb-cli icon indicating copy to clipboard operation
edgedb-cli copied to clipboard

DX: tab completion of connection options clutter

Open CarsonF opened this issue 6 months ago • 0 comments

When I tab complete

gel branch create -

I get 24 options related to the connection. I don't care about any of those I'm using defaults, as I assume most are. I've got to scan through the 27 lines to find the 3 that are actually used in this specific command.

Is it possible to segregate these or even hide them so I can more easily filter them out mentally?

> gel branch create -
--admin                       -- Connect to a passwordless Unix socket with superuser privileges by default                                                                                                                                                                                                               
--branch                  -b  -- Branch to connect with                                                                                                                                                                                                                                                                   
--connect-timeout             -- Fail when no response from EdgeDB for TIMEOUT (default '10s'); alternatively will retry if --wait-until-available is also specified                                                                                                                                                      
--container                   -- Connect to a specific docker container                                                                                                                                                                                                                                                   
--copy-data                   -- Copy data from the 'base' branch                                                                                                                                                                                                                                                         
--credentials-file            -- Path to JSON file to read credentials from                                                                                                                                                                                                                                               
--database                -d  -- Database name to connect to                                                                                                                                                                                                                                                              
--docker                      -- Connect to a docker instance. If docker-compose.yaml is present, the instance will be automatically detected. Otherwise, --container must be specified                                                                                                                                   
--dsn                         -- DSN for Gel to connect to (overrides all other options except password)                                                                                                                                                                                                                  
--empty                   -e  -- Create the branch without any schema or data                                                                                                                                                                                                                                             
--from                        -- The optional 'base' of the branch to create                                                                                                                                                                                                                                              
--help                    -h  -- Print help (see more with '--help')                                                                                                                                                                                                                                                      
--host                    -H  -- EdgeDB instance host                                                                                                                                                                                                                                                                     
--instance                -I  -- Instance name (use gel instance list to list local, remote and Gel Cloud instances available to you)                                                                                                                                                                                     
--no-password                 -- Don't ask for password                                                                                                                                                                                                                                                                   
--no-tls-verify-hostname      -- Do not verify server hostname                                                                                                                                                                                                                                                            
--password                    -- Ask for password on terminal (TTY)                                                                                                                                                                                                                                                       
--password-from-stdin         -- Read password from stdin rather than TTY (useful for scripts)                                                                                                                                                                                                                            
--port                    -P  -- Port to connect to EdgeDB                                                                                                                                                                                                                                                                
--secret-key                  -- Secret key to authenticate with                                                                                                                                                                                                                                                          
--tls-ca-file                 -- Certificate to match server against                                                                                                                                                                                                                                                      
--tls-security                -- Specifications for client-side TLS security mode:                                                                                                                                                                                                                                        
--tls-server-name             -- Override server name used for TLS connections and certificate verification                                                                                                                                                                                                               
--tls-verify-hostname         -- Verify server hostname using provided certificate                                                                                                                                                                                                                                        
--unix-path                   -- A path to a Unix socket for EdgeDB connection                                                                                                                                                                                                                                            
--user                    -u  -- EdgeDB user name                                                                                                                                                                                                                                                                         
--wait-until-available        -- Retry up to WAIT_TIME (e.g. '30s') in case EdgeDB connection cannot be established 

CLI version: 7.4.0+bb0c44

CarsonF avatar Jul 02 '25 17:07 CarsonF