Skip to content
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

Use official shellcheck image #1538

Merged
merged 1 commit into from
Mar 8, 2019

Conversation

thaJeztah
Copy link
Member

@thaJeztah thaJeztah commented Nov 29, 2018

This patch switches the shellcheck image to use the official image from Docker Hub.

Note that this does not yet update shellcheck to the latest version (v0.5.x); Shellcheck v0.4.7 added some new checks, which makes CI currently fail, so will be done in a follow-up PR. Instead, the v0.4.6 version is used in this PR, which is closest to the same version as was installed in the image before this change;

docker run --rm docker-cli-shell-validate shellcheck --version
ShellCheck - shell script analysis tool
version: 0.4.4
license: GNU General Public License, version 3
website: http://www.shellcheck.net

@thaJeztah
Copy link
Member Author

This PR is built on top of #1537, so marking it WIP; only the last commit is new.

ping @vdemeester @albers PTAL

@thaJeztah
Copy link
Member Author

For reference; these are the failures when using the v0.5.0 image;


In contrib/completion/bash/docker line 107:
	COMPREPLY=( $(compgen -W "$(__docker_configs "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 143:
	COMPREPLY=( $(compgen -W "$(__docker_containers "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 170:
	local containers=( $(__docker_q ps -aq --no-trunc) )
                           ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 171:
	local names=( $(__docker_q inspect --format '{{.Name}}' "${containers[@]}") )
                      ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 173:
	COMPREPLY=( $(compgen -W "${names[*]}" -- "$cur") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 177:
	local containers=( $(__docker_q ps -aq) )
                           ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 178:
	COMPREPLY=( $(compgen -W "${containers[*]}" -- "$cur") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 213:
				format+="$repo_format\n"
                                                     ^-- SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n".


In contrib/completion/bash/docker line 218:
					format+="$tag_format\n"
                                                            ^-- SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n".


In contrib/completion/bash/docker line 224:
					format+="$id_format\n"
                                                           ^-- SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n".


In contrib/completion/bash/docker line 230:
				format+="$tag_format\n"
                                                    ^-- SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n".


In contrib/completion/bash/docker line 251:
	COMPREPLY=( $(compgen -W "$(__docker_images "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 288:
	COMPREPLY=( $(compgen -W "$(__docker_networks "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 292:
	local containers=($(__docker_q network inspect -f '{{range $i, $c := .Containers}}{{$i}} {{$c.Name}} {{end}}' "$1"))
                          ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 293:
	COMPREPLY=( $(compgen -W "${containers[*]}" -- "$cur") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 314:
	COMPREPLY=( $(compgen -W "$(__docker_volumes "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 345:
	local plugins=($(__docker_q info --format "{{range \$i, \$p := .Plugins.$type}}{{.}} {{end}}"))
                       ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 347:
		plugins=(${plugins[@]/$del/})
                         ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 364:
	COMPREPLY=( $(compgen -W "$(__docker_plugins_bundled "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 395:
	COMPREPLY=( $(compgen -W "$(__docker_plugins_installed "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 403:
	COMPREPLY=( $(compgen -W "$(__docker_runtimes)" -- "$cur") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 439:
	COMPREPLY=( $(compgen -W "$(__docker_secrets "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 455:
	COMPREPLY=( $(compgen -W "$(__docker_stacks "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 509:
	COMPREPLY=( $(compgen -W "$(__docker_nodes "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 543:
	COMPREPLY=( $(compgen -W "$(__docker_services "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 554:
	COMPREPLY=( $(compgen -W "$(__docker_services "$@") $(__docker_tasks)" -- "$cur") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 563:
	COMPREPLY=( ${COMPREPLY[@]/%/"$1"} )
                    ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 693:
	local parts=( $1 )
                      ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 742:
	COMPREPLY=( $(host 2>/dev/null "${cur%:}" | awk '/has address/ {print $4}') )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 759:
	ip addr show scope global 2>/dev/null | sed -n "s| \+inet \([0-9.]\+\).* \([^ ]\+\)|$format|p"
                                                           ^-- SC1117: Backslash is literal in "\+". Prefer explicit escaping: "\\+".
                                                                  ^-- SC1117: Backslash is literal in "\(". Prefer explicit escaping: "\\(".
                                                                          ^-- SC1117: Backslash is literal in "\+". Prefer explicit escaping: "\\+".
                                                                            ^-- SC1117: Backslash is literal in "\)". Prefer explicit escaping: "\\)".
                                                                                 ^-- SC1117: Backslash is literal in "\(". Prefer explicit escaping: "\\(".
                                                                                       ^-- SC1117: Backslash is literal in "\+". Prefer explicit escaping: "\\+".
                                                                                         ^-- SC1117: Backslash is literal in "\)". Prefer explicit escaping: "\\)".


In contrib/completion/bash/docker line 772:
	COMPREPLY=( $( compgen -W "$(__docker_local_interfaces "$@") $additional_interface" -- "$cur" ) )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 785:
	COMPREPLY=( $( compgen -W "
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 817:
	COMPREPLY=( $( compgen -W "
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 841:
					COMPREPLY=( $( compgen -W "${cur}ctrl-" -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 844:
					COMPREPLY=( $( compgen -W "ctrl-" -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 856:
	COMPREPLY=( $( compgen -W "default hyperv process" -- "$cur" ) )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 860:
	COMPREPLY=( $( compgen -W "
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 900:
			COMPREPLY=( $( compgen -W "$all_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 903:
			COMPREPLY=( $( compgen -W "$awslogs_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 906:
			COMPREPLY=( $( compgen -W "$fluentd_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 909:
			COMPREPLY=( $( compgen -W "$gcplogs_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 912:
			COMPREPLY=( $( compgen -W "$gelf_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 915:
			COMPREPLY=( $( compgen -W "$journald_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 918:
			COMPREPLY=( $( compgen -W "$json_file_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 921:
			COMPREPLY=( $( compgen -W "$logentries_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 924:
			COMPREPLY=( $( compgen -W "$syslog_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 927:
			COMPREPLY=( $( compgen -W "$splunk_options" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 941:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 945:
			COMPREPLY=( $( compgen -W "/" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 950:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 954:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 958:
			COMPREPLY=( $( compgen -W "tcp udp" -S "://" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 963:
			COMPREPLY=( $( compgen -W "1 2 3 4 5 6 7 8 9" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 967:
			COMPREPLY=( $( compgen -W "gzip none zlib" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 971:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 975:
			COMPREPLY=( $( compgen -W "blocking non-blocking" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 979:
			COMPREPLY=( $( compgen -W "tcp:// tcp+tls:// udp:// unix://" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 985:
			COMPREPLY=( $( compgen -W "
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1010:
			COMPREPLY=( $( compgen -W "rfc3164 rfc5424 rfc5424micro" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1018:
			COMPREPLY=( $( compgen -W "true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1022:
			COMPREPLY=( $( compgen -W "http:// https://" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1028:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1032:
			COMPREPLY=( $( compgen -W "inline json raw" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1040:
	COMPREPLY=( $( compgen -W "debug info warn error fatal" -- "$cur" ) )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1050:
					COMPREPLY=( $( compgen -W "always no on-failure on-failure: unless-stopped" -- "$cur") )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1073:
	COMPREPLY=( $( compgen -W "${signals[*]} ${signals[*]#SIG}" -- "$( echo "$cur" | tr '[:lower:]' '[:upper:]')" ) )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1086:
			COMPREPLY=( $( compgen -W "all kubernetes swarm" -- "$cur") )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1095:
		COMPREPLY=( $(compgen -g -- "${cur#*:}") )
                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1097:
		COMPREPLY=( $(compgen -u -S : -- "$cur") )
                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1126:
			COMPREPLY=( $( compgen -W "$boolean_options $global_options_with_args" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1131:
				__docker_daemon_is_experimental && commands+=(${experimental_commands[*]})
                                                                              ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 1132:
				COMPREPLY=( $( compgen -W "${commands[*]} help" -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1161:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1164:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1179:
			COMPREPLY=( $( compgen -W "--checkpoint-dir --help --leave-running" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1200:
			COMPREPLY=( $( compgen -W "--checkpoint-dir --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1221:
			COMPREPLY=( $( compgen -W "--checkpoint-dir --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1228:
				COMPREPLY=( $( compgen -W "$(__docker_q checkpoint ls "$prev" | sed 1d)" -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1250:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1253:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1264:
			COMPREPLY=( $( compgen -W "golang" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1271:
			COMPREPLY=( $( compgen -W "--help --label -l --template-driver" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1291:
			COMPREPLY=( $( compgen -W "--format -f --help --pretty" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1318:
			COMPREPLY=( $( compgen -S = -W "id label name" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1329:
			COMPREPLY=( $( compgen -W "--format --filter -f --help --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1341:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1386:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1389:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1399:
			COMPREPLY=( $( compgen -W "--detach-keys --help --no-stdin --sig-proxy=false" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1419:
			COMPREPLY=( $( compgen -W "--author -a --change -c --help --message -m --pause=false -p=false" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1438:
			COMPREPLY=( $( compgen -W "--archive -a --follow-link -L --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1450:
						local files=( ${COMPREPLY[@]} )
                                                              ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 1453:
						COMPREPLY=( $( compgen -W "${COMPREPLY[*]}" -S ':' ) )
                                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1454:
						local containers=( ${COMPREPLY[@]} )
                                                                   ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 1456:
						COMPREPLY=( $( compgen -W "${files[*]} ${containers[*]}" -- "$cur" ) )
                                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1469:
					COMPREPLY=( $( compgen -W "${COMPREPLY[*]}" -S ':' ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1487:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1504:
			COMPREPLY=( $( compgen -e -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1519:
			COMPREPLY=( $( compgen -W "--detach -d --detach-keys --env -e --help --interactive -i --privileged -t --tty -u --user --workdir -w" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1537:
			COMPREPLY=( $( compgen -W "--help --output -o" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1562:
			COMPREPLY=( $( compgen -W "--help --signal -s" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1579:
			COMPREPLY=( $( compgen -W "--details --follow -f --help --since --tail --timestamps -t --until" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1613:
			COMPREPLY=( $( compgen -W "healthy starting none unhealthy" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1617:
			COMPREPLY=( $( compgen -W "true false" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1633:
			COMPREPLY=( $( compgen -W "created dead exited paused restarting running removing" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1644:
			COMPREPLY=( $( compgen -S = -W "ancestor before exited expose health id is-task label name network publish since status volume" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1655:
			COMPREPLY=( $( compgen -W "--all -a --filter -f --format --help --last -n --latest -l --no-trunc --quiet -q --size -s" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1663:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1674:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1688:
			COMPREPLY=( $( compgen -W "label label! until" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1696:
			COMPREPLY=( $( compgen -W "--force -f --filter --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1708:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1728:
			COMPREPLY=( $( compgen -W "--help --time -t" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1739:
			COMPREPLY=( $( compgen -W "--force -f --help --link -l --volumes -v" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1886:
			COMPREPLY=( $( compgen -W "user: role: type: level: disable" -- "${cur##*=}") )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1895:
			COMPREPLY+=( $( compgen -W "unconfined" -- "$cur" ) )
                                     ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1910:
			COMPREPLY=( $( compgen -W 'stdin stdout stderr' -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1931:
					COMPREPLY=( $( compgen -W '/' -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1943:
			COMPREPLY=( $( compgen -e -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1954:
					COMPREPLY=( $( compgen -W 'none host private shareable container:' -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1974:
					COMPREPLY=( $( compgen -W "${COMPREPLY[*]}" -S ':' ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 1994:
					COMPREPLY=( $( compgen -W "$(__docker_plugins_bundled --type Network) $(__docker_networks) container:" -- "$cur") )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2008:
					COMPREPLY=( $( compgen -W 'host container:' -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2021:
			COMPREPLY=( $( compgen -W "apparmor= label= no-new-privileges seccomp=" -- "$cur") )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2032:
			COMPREPLY=( $( compgen -W "size" -S = -- "$cur") )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2041:
			COMPREPLY=( $( compgen -W "host" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2059:
			COMPREPLY=( $( compgen -W "$all_options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2090:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2107:
			COMPREPLY=( $( compgen -W "--all -a --format --help --no-stream --no-trunc" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2124:
			COMPREPLY=( $( compgen -W "--help --time -t" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2135:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2149:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2194:
			COMPREPLY=( $( compgen -W "$all_options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2205:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2313:
 			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2322:
			COMPREPLY=( $( compgen -W "ext4 xfs" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2326:
			COMPREPLY=( $( compgen -W "2 3 4 5 6 7" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2337:
			COMPREPLY=( $( compgen -W "consul etcd zk" -S "://" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2342:
			COMPREPLY=( $( compgen -W "discovery.heartbeat discovery.ttl kv.cacertfile kv.certfile kv.keyfile kv.path" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2359:
			COMPREPLY=( $( compgen -W "aufs btrfs devicemapper overlay overlay2 vfs zfs" -- "$(echo "$cur" | tr '[:upper:]' '[:lower:]')" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2392:
					COMPREPLY=( $( compgen -W "$all_options" -S = -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2395:
					COMPREPLY=( $( compgen -W "$btrfs_options" -S = -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2398:
					COMPREPLY=( $( compgen -W "$devicemapper_options" -S = -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2401:
					COMPREPLY=( $( compgen -W "$overlay2_options" -S = -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2404:
					COMPREPLY=( $( compgen -W "$zfs_options" -S = -- "$cur" ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2446:
			COMPREPLY=( $( compgen -W "$boolean_options $options_with_args" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2474:
		COMPREPLY=( $( compgen -W "${commands[*]}" -- "$cur" ) )
                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2508:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2511:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2574:
			COMPREPLY=( $( compgen -e -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2598:
					COMPREPLY=( $( compgen -W "$(__docker_plugins_bundled --type Network) $(__docker_networks) container:" -- "$cur") )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2620:
			COMPREPLY=( $( compgen -W "$targets" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2630:
			COMPREPLY=( $( compgen -W "$all_options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2650:
			COMPREPLY=( $( compgen -W "--format --help --human=false -H=false --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2674:
			COMPREPLY=( $( compgen -W "--change -c --help --message -m" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2703:
			COMPREPLY=( $( compgen -W "--help --input -i --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2720:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2734:
			COMPREPLY=( $( compgen -S = -W "before dangling label reference since" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2745:
			COMPREPLY=( $( compgen -W "--all -a --digests --filter -f --format --help --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2759:
			COMPREPLY=( $( compgen -W "label label! until" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2767:
			COMPREPLY=( $( compgen -W "--all -a --force -f --filter --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2784:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2806:
			COMPREPLY=( $( compgen -W "--disable-content-trust=false --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2824:
			COMPREPLY=( $( compgen -W "--force -f --help --no-prune" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2846:
			COMPREPLY=( $( compgen -W "--help --output -o" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2857:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2903:
				COMPREPLY=( $( compgen -W "container image network node plugin secret service volume" -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2915:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2920:
					COMPREPLY=( $( compgen -W "
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2977:
			COMPREPLY=( $( compgen -W "--help --password -p --password-stdin --username -u" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 2985:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3014:
					COMPREPLY=( $( compgen -W "${COMPREPLY[*]}" -S ':' ) )
                                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3027:
			COMPREPLY=( $( compgen -W "$boolean_options $options_with_args" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3055:
			COMPREPLY=( $( compgen -W "default" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3062:
			COMPREPLY=( $( compgen -W "local swarm" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3069:
			COMPREPLY=( $( compgen -W "--attachable --aux-address --config-from --config-only --driver -d --gateway --help --ingress --internal --ip-range --ipam-driver --ipam-opt --ipv6 --label --opt -o --scope --subnet" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3077:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3099:
			COMPREPLY=( $( compgen -W "--format -f --help --verbose" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3122:
			COMPREPLY=( $( compgen -W "global local swarm" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3126:
			COMPREPLY=( $( compgen -W "builtin custom" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3133:
			COMPREPLY=( $( compgen -S = -W "driver id label name scope type" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3144:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3152:
			COMPREPLY=( $( compgen -W "label label! until" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3160:
			COMPREPLY=( $( compgen -W "--force -f --filter --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3168:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3193:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3196:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3222:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3225:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3243:
			COMPREPLY=( $( compgen -W "--format -f --help --pretty" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3259:
			COMPREPLY=( $( compgen -W "--details --follow -f --help --no-resolve --no-task-ids --no-trunc --raw --since --tail --timestamps -t" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3282:
			COMPREPLY=( $( compgen -W "global replicated" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3293:
			COMPREPLY=( $( compgen -W "id label mode name" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3304:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3316:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3326:
			COMPREPLY=( $( compgen -W "--detach -d --help --quit -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3340:
			COMPREPLY=( $( compgen -W "--detach -d --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3354:
			COMPREPLY=( $( compgen -W "accepted running shutdown" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3369:
			COMPREPLY=( $( compgen -W "desired-state id name node" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3380:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --no-resolve --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3480:
				COMPREPLY=( $( compgen -W "global replicated" -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3526:
				COMPREPLY=( $( compgen -e -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3539:
			COMPREPLY=( $( compgen -W "engine.labels node.labels" -S . -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3551:
			COMPREPLY=( $( compgen -W "dnsrr vip" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3556:
			COMPREPLY=( $( compgen -e -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3561:
			COMPREPLY=( $(compgen -g -- "$cur") )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3589:
			COMPREPLY=( $( compgen -W "spread" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3594:
			COMPREPLY=( $( compgen -W "any none on-failure" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3598:
			COMPREPLY=( $( compgen -W "continue pause" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3610:
			COMPREPLY=( $( compgen -W "continue pause rollback" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3614:
			COMPREPLY=( $( compgen -W "start-first stop-first" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3628:
			COMPREPLY=( $( compgen -W "$boolean_options $options_with_args" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3660:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3663:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3681:
			COMPREPLY=( $( compgen -W "--ca-cert --ca-key --cert-expiry --detach -d --external-ca --help --quiet -q --rotate" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3690:
				COMPREPLY=( $( compgen -W "2377" -- "${cur##*:}" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3698:
			COMPREPLY=( $( compgen -W "active drain pause" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3710:
				COMPREPLY=( $( compgen -W "2377" -- "${cur##*:}" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3721:
			COMPREPLY=( $( compgen -W "--advertise-addr --autolock --availability --cert-expiry --data-path-addr --default-addr-pool --default-addr-pool-mask-length --dispatcher-heartbeat --external-ca --force-new-cluster --help --listen-addr --max-snapshots --snapshot-interval --task-history-limit" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3730:
				COMPREPLY=( $( compgen -W "2377" -- "${cur##*:}" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3738:
			COMPREPLY=( $( compgen -W "active drain pause" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3747:
				COMPREPLY=( $( compgen -W "2377" -- "${cur##*:}" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3761:
			COMPREPLY=( $( compgen -W "--advertise-addr --availability --data-path-addr --help --listen-addr --token" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3764:
			COMPREPLY=( $( compgen -W "2377" -- "${cur##*:}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3772:
			COMPREPLY=( $( compgen -W "--help --quiet -q --rotate" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3777:
				COMPREPLY=( $( compgen -W "manager worker" -- "$cur" ) )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3786:
			COMPREPLY=( $( compgen -W "--force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3794:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3802:
			COMPREPLY=( $( compgen -W "--help --quiet -q --rotate" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3816:
			COMPREPLY=( $( compgen -W "--autolock --cert-expiry --dispatcher-heartbeat --external-ca --help --max-snapshots --snapshot-interval --task-history-limit" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3839:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3842:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3850:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3866:
			COMPREPLY=( $( compgen -W "--format -f --help --pretty" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3885:
			COMPREPLY=( $( compgen -W "accepted pending" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3893:
			COMPREPLY=( $( compgen -W "manager worker" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3900:
			COMPREPLY=( $( compgen -W "id label membership name role" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3911:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3919:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3933:
			COMPREPLY=( $( compgen -W "--force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3944:
			COMPREPLY=( $( compgen -W "accepted running shutdown" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3955:
			COMPREPLY=( $( compgen -W "desired-state id label name" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3966:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --no-resolve --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3977:
			COMPREPLY=( $( compgen -W "active drain pause" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3981:
			COMPREPLY=( $( compgen -W "manager worker" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 3991:
			COMPREPLY=( $( compgen -W "--availability --help --label-add --label-rm --role" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4027:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4030:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4038:
			COMPREPLY=( $( compgen -W "--compress --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4055:
			COMPREPLY=( $( compgen -W "--force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4075:
			COMPREPLY=( $( compgen -W "--help --timeout" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4095:
			COMPREPLY=( $( compgen -W "--format -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4112:
			COMPREPLY=( $( compgen -W "--alias --disable --disable-content-trust=false --grant-all-permissions --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4125:
			COMPREPLY=( $( compgen -W "authz ipamdriver logdriver metricscollector networkdriver volumedriver" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4129:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4136:
			COMPREPLY=( $( compgen -S = -W "capability enabled" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4147:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --no-trunc --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4155:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4173:
			COMPREPLY=( $( compgen -W "--force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4184:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4198:
			COMPREPLY=( $( compgen -W "--disable-content-trust --grant-all-permissions --help --skip-remote-check" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4207:
				COMPREPLY=( $(compgen -S : -W "${plugin_images%:*}" -- "$cur") )
                                            ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4271:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4274:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4285:
			COMPREPLY=( $( compgen -W "golang" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4292:
			COMPREPLY=( $( compgen -W "--driver -d --help --label -l --template-driver" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4312:
			COMPREPLY=( $( compgen -W "--format -f --help --pretty" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4339:
			COMPREPLY=( $( compgen -S = -W "id label name" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4350:
			COMPREPLY=( $( compgen -W "--format --filter -f --help --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4362:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4376:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4380:
			COMPREPLY=( $( compgen -W "false true" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4387:
			COMPREPLY=( $( compgen -S = -W "is-automated is-official stars" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4398:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --limit --no-trunc" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4426:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4429:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4447:
			COMPREPLY=( $( compgen -W "always changed never" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4458:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4490:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4499:
			COMPREPLY=( $( compgen -W "accepted running shutdown" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4516:
			COMPREPLY=( $( compgen -S = -W "id name desired-state" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4529:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4551:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4579:
			COMPREPLY=( $( compgen -S = -W "id label name" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4592:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4632:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4635:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4649:
			COMPREPLY=( $( compgen -W "--format --help --verbose -v" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4663:
			COMPREPLY=( $( compgen -W "$name" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4667:
			COMPREPLY=( $( compgen -W "
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4721:
			COMPREPLY=( $( compgen -W "local swarm" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4725:
			COMPREPLY=( $( compgen -W "config container daemon image network plugin secret service volume" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4736:
			COMPREPLY=( $( compgen -S = -W "container daemon event image label network scope type volume" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4747:
			COMPREPLY=( $( compgen -W "--filter -f --help --since --until --format" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4761:
			COMPREPLY=( $( compgen -W "--format -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4769:
			COMPREPLY=( $( compgen -W "label label! until" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4777:
			COMPREPLY=( $( compgen -W "--all -a --force -f --filter --help --volumes" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4798:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4801:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4809:
			COMPREPLY=( $( compgen -W "--help --pretty" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4823:
			COMPREPLY=( $( compgen -W "--help --yes -y" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4837:
			COMPREPLY=( $( compgen -W "--help --local" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4874:
			COMPREPLY=( $( compgen -W "$options" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4892:
			COMPREPLY=( $( compgen -W "--driver -d --help --label --opt -o" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4906:
			COMPREPLY=( $( compgen -W "--format -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4922:
			COMPREPLY=( $( compgen -W "true false" -- "${cur##*=}" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4937:
			COMPREPLY=( $( compgen -S = -W "dangling driver label name" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4948:
			COMPREPLY=( $( compgen -W "--filter -f --format --help --quiet -q" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4956:
			COMPREPLY=( $( compgen -W "label label!" -S = -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4964:
			COMPREPLY=( $( compgen -W "--filter --force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 4976:
			COMPREPLY=( $( compgen -W "--force -f --help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 5000:
			COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 5003:
			COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
                                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 5083:
	local commands=(${management_commands[*]} ${top_level_commands[*]})
                        ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.
                                                  ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 5084:
	[ -z "$DOCKER_HIDE_LEGACY_COMMANDS" ] && commands+=(${legacy_commands[*]})
                                                            ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.

@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch from 0077c51 to a6dbbf9 Compare November 29, 2018 00:30
@codecov-io
Copy link

codecov-io commented Nov 29, 2018

Codecov Report

Merging #1538 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1538   +/-   ##
=======================================
  Coverage   56.12%   56.12%           
=======================================
  Files         306      306           
  Lines       21030    21030           
=======================================
  Hits        11803    11803           
  Misses       8373     8373           
  Partials      854      854

@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch from a6dbbf9 to 4cf7785 Compare November 29, 2018 09:49
@thaJeztah
Copy link
Member Author

hm.. forgot that circleci still expects make to be there; interesting; shellcheck now looks to fail with the same errors as the v0.5 image. I tried it yesterday and then it seemed to work.

Trying to find why it passed for me yesterday, but fails now 🤔

@thaJeztah
Copy link
Member Author

Ah; must've tried with v0.4.6, as that works; so difference is between shellcheck v0.4.6 and v0.4.7; koalaman/shellcheck@v0.4.6...v0.4.7

@thaJeztah
Copy link
Member Author

Right, and I see all the failures are due to three new checks that were added in shellcheck v0.4.7;

  • SC2206/SC2207: Suggest alternatives when using word splitting in arrays
  • SC1117: Warn about double quoted, undefined backslash sequences
In contrib/completion/bash/docker line 347:
		plugins=(${plugins[@]/$del/})
                         ^-- SC2206: Quote to prevent word splitting, or split robustly with mapfile or read -a.


In contrib/completion/bash/docker line 107:
	COMPREPLY=( $(compgen -W "$(__docker_configs "$@")" -- "$current") )
                    ^-- SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting).


In contrib/completion/bash/docker line 213:
				format+="$repo_format\n"
                                                     ^-- SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n".

I'll update the PR to use v0.4.6, and we can look at fixing the new checks in a separate PR (and bump to v0.5.x)

@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch 4 times, most recently from 0bfe2bd to 9896b9d Compare November 29, 2018 12:01
@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch from 9896b9d to 4f8115a Compare January 10, 2019 10:34
@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch 4 times, most recently from 4026a9e to 2cdf492 Compare February 26, 2019 11:44
@thaJeztah thaJeztah changed the title [WIP] Use official shellcheck image Use official shellcheck image Feb 26, 2019
@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch from 2cdf492 to 40fa43c Compare February 26, 2019 14:08
This patch switches the shellcheck image to use the official image
from Docker Hub.

Note that this does not yet update shellcheck to the latest version (v0.5.x);
Shellcheck v0.4.7 added some new checks, which makes CI currently fail, so will
be done in a follow-up PR. Instead, the v0.4.6 version is used in this PR, which
is closest to the same version as was installed in the image before this change;

```
docker run --rm docker-cli-shell-validate shellcheck --version
ShellCheck - shell script analysis tool
version: 0.4.4
license: GNU General Public License, version 3
website: http://www.shellcheck.net
```

Signed-off-by: Sebastiaan van Stijn <[email protected]>
@thaJeztah thaJeztah force-pushed the use_official_shellcheck_image branch from 40fa43c to 388646e Compare February 26, 2019 14:10
@vdemeester vdemeester merged commit 388646e into docker:master Mar 8, 2019
@GordonTheTurtle GordonTheTurtle added this to the 19.03.0 milestone Mar 8, 2019
@thaJeztah thaJeztah deleted the use_official_shellcheck_image branch March 9, 2019 01:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants