Skip to content

Conversation

shannmu
Copy link
Contributor

@shannmu shannmu commented Jun 21, 2024

Related issue #3916

Work in this PR

  • Add zsh glue script code to support that we could call external native completion.
  • Add the same level of tests as fish

@epage
Copy link
Member

epage commented Jun 21, 2024

related issue: #3916

If this isn't closing out the issue, what is left?

@epage
Copy link
Member

epage commented Jun 25, 2024

Blockers for merge

@epage epage merged commit beeffe8 into clap-rs:master Jul 17, 2024
@epage epage mentioned this pull request Jul 17, 2024
2 tasks
chris-olszewski added a commit to vercel/turborepo that referenced this pull request Aug 30, 2024
### Description

Fixes #9080

Upgrade `clap` and completion generation to get
clap-rs/clap#5545

Also change the long flag name from `--[no-]daemon` to `--(no-)daemon`
as `[]` are reserved chars for zsh autocompletes.

⚠️ This will break anyone who uses `--[no-]daemon` to enable the daemon.

### Testing Instructions

`turbo_dev completion zsh > ~/.zsh/completions/_turbo` (or where ever
your completions are stored)
Open a new shell and enter `turbo -- <TAB> <TAB>`
```
[0 olszewski@chriss-mbp] /Users/olszewski/code/vercel/turborepo $ turbo --
--__test-run                                 --no-daemon           --version                                                                                         
--experimental-space-id                      --pkg-inference-root  --dry-run  --                                                                                       
--affected                                                                    -- Run only tasks that are affected by changes between the current branch and `main`     
--anon-profile                                                                -- File to write turbo's performance profile output into. All identifying data omitted fr
--api                                                                         -- Override the endpoint for API calls                                                   
--cache-dir                                                                   -- Override the filesystem cache directory                                               
--cache-workers                                                               -- Set the number of concurrent cache operations (default 10)                            
--check-for-update                                                            -- Force a check for a new version of turbo                                              
--color                                                                       -- Force color usage in the terminal                                                     
--concurrency                                                                 -- Limit the concurrency of task execution. Use 1 for serial (i.e. one-at-a-time) executi
--continue                                                                    -- Continue execution even if a task exits with an error or non-zero exit code. The defau
--cwd                                                                         -- The directory in which to run turbo                                                   
--daemon                                                                      -- Force turbo to either use or not use the local daemon. If unset turbo will use the def
--dangerously-disable-package-manager-check                                   -- Allow for missing `packageManager` in `package.json`                                  
--env-mode                                                                    -- Environment variable mode. Use "loose" to pass the entire existing environment. Use "s
--filter                                                                      -- Use the given selector to specify package(s) to act as entry points. The syntax mirror
--force                                                                       -- Ignore the existing cache (to force execution)                                        
--framework-inference                                                         -- Specify whether or not to do framework inference for tasks                            
--global-deps                                                                 -- Specify glob of global filesystem dependencies to be hashed. Useful for .env and files
--graph                                                                       -- Generate a graph of the task execution and output to a file when a filename is specifi
--heap                                                                        -- Specify a file to save a pprof heap profile                                           
--help                                                                        -- Print help (see more with '--help')                                                   
--log-order                                                                   -- Set type of task output order. Use "stream" to show output as soon as it is available.
--log-prefix                                                                  -- Use "none" to remove prefixes from task logs. Use "task" to get task id prefixing. Use
--login                                                                       -- Override the login endpoint                                                           
--no-cache                                                                    -- Avoid saving task results to the cache. Useful for development/watch tasks            
--no-color                                                                    -- Suppress color usage in the terminal                                                  
--no-update-notifier                                                          -- Disable the turbo update notification                                                 
--only                                                                        -- Only executes the tasks specified, does not execute parent tasks                      
--output-logs                                                                 -- Set type of process output logging. Use "full" to show all output. Use "hash-only" to 
--parallel                                                                    -- Execute all tasks in parallel                                                         
--preflight                                                                   -- When enabled, turbo will precede HTTP requests with an OPTIONS request for authorizati
--profile                                                                     -- File to write turbo's performance profile output into. You can load the file up in chr
--remote-cache-read-only                                                      -- Treat remote cache as read only                                                       
--remote-cache-timeout                                                        -- Set a timeout for all HTTP requests                                                   
--remote-only                                                                 -- Ignore the local filesystem cache for all tasks. Only allow reading and caching artifa
--single-package                                                              -- Run turbo in single-package mode                                                      
--skip-infer                                                                  -- Skip any attempts to infer which version of Turbo the project is configured to use    
--summarize                                                                   -- Generate a summary of the turbo run                                                   
--team                                                                        -- Set the team slug for API calls                                                       
--token                                                                       -- Set the auth token for API calls                                                      
--trace                                                                       -- Specify a file to save a pprof trace                                                  
--ui                                                                          -- Specify whether to use the streaming UI or TUI                                        
--verbosity                                                                   -- Verbosity level
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants