From 12ea0e094d7bf91e6ed54b3aafd4c5ba4de2e977 Mon Sep 17 00:00:00 2001 From: Sam Therapy Date: Sat, 3 Sep 2022 13:00:03 +0200 Subject: [PATCH] Even more completions Signed-off-by: Sam Therapy --- .drone.jsonnet | 21 ++++++++++----------- completions/zsh.zsh | 46 +++++++++++++++++++++++++++++++++------------ template.mk | 15 +++++++-------- 3 files changed, 51 insertions(+), 31 deletions(-) diff --git a/.drone.jsonnet b/.drone.jsonnet index 99a4d0d..566eafc 100644 --- a/.drone.jsonnet +++ b/.drone.jsonnet @@ -9,17 +9,17 @@ local testing(version, arch) = { }, steps: [ { - name: "submodules", - image: "alpine/git", + name: "compile", + image: "golang:" + version, commands: [ - "git submodule update --init --recursive" - ] + "make awl" + ], }, { name: "lint", image: "rancher/drone-golangci-lint:latest", depends_on: [ - "submodules", + "compile", ], }, { @@ -29,7 +29,7 @@ local testing(version, arch) = { "make test-ci" ], depends_on: [ - "submodules", + "lint", ], }, { @@ -39,7 +39,7 @@ local testing(version, arch) = { "make fuzz", ], depends_on: [ - "submodules", + "lint", ], }, ], @@ -68,7 +68,6 @@ local release() = { image: "alpine/git", commands : [ "git fetch --tags", - "git submodule update --init --recursive" ] }, { @@ -95,9 +94,9 @@ local release() = { [ testing("1.19", "amd64"), - testing("1.19", "arm64"), - testing("1.18", "amd64"), - testing("1.18", "arm64"), + // testing("1.19", "arm64"), + // testing("1.18", "amd64"), + // testing("1.18", "arm64"), release() ] \ No newline at end of file diff --git a/completions/zsh.zsh b/completions/zsh.zsh index 6c76b80..167ee50 100644 --- a/completions/zsh.zsh +++ b/completions/zsh.zsh @@ -21,7 +21,7 @@ local -a alts args # '*+ednsopt=[specify EDNS option]:code point' '*+noedns[clear EDNS options to be sent]' '*+'{no,}'expire[send an EDNS Expire option]' - '*+'{no,}'idnin[set processing of IDN domain names on input]' + # '*+'{no,}'idnin[set processing of IDN domain names on input]' '*+'{no,}'idnout[set conversion of IDN puny code on output]' '*+'{no,}'keepalive[request EDNS TCP keepalive]' '*+'{no,}'keepopen[keep TCP socket open between queries]' @@ -40,7 +40,7 @@ local -a alts args '*+'{no,}'answer[print answer section of a reply]' '*+'{no,}'authority[print authority section of a reply]' '*+'{no,}'all[set all print/display flags]' - '*+'{no,}'subnet[send EDNS client subnet option]:addr/prefix-length' + '*+'{no,}'subnet=[send EDNS client subnet option]:addr/prefix-length' '*+'{no,}'tcflag[set TC flag in the query]' '*+time=[set query timeout]:timeout (seconds) [1]' '*+timeout=[set query timeout]:timeout (seconds) [1]' @@ -51,6 +51,7 @@ local -a alts args '*+bufsize=[specify UDP buffer size]:size (bytes)' '*+'{no,}'dnssec[enable DNSSEC]' '*+'{no,}'nsid[include EDNS name server ID request in query]' + '*+'{no,}'class[display the class whening printing the answer]' '*+'{no,}'ttlid[display the TTL whening printing the record]' '*+'{no,}'ttlunits[display the TTL in human-readable units]' # '*+'{no,}'unknownformat[print RDATA in RFC 3597 "unknown" format]' @@ -61,21 +62,42 @@ local -a alts args ) # TODO: Add the regular (POSIX/GNU) flags _arguments -s -C $args \ - '(- *)-h[display help information]' \ - '(- *)-V[display version information]' \ - '-v=+[set verbosity]:verbosity:compadd -M "m\:{\-1-3}={\-1-3}" - \-1 0 1 2 3' \ + '(- *)-'{h,-help}'[display help information]' \ + '(- *)-'{V,-version}'[display version information]' \ + '-'{v,-verbosity}'=+[set verbosity to custom level]:verbosity:compadd -M "m\:{\-1-3}={\-1-3}" - \-1 0 1 2 3' \ + '-'{v,-verbosity}'+[set verbosity to info]' \ '*-'{p,-port}'+[specify port number]:port:_ports' \ '*-'{q,-query}'+[specify host name to query]:host:_hosts' \ '*-'{c,-class}'+[specify class]:class:compadd -M "m\:{a-z}={A-Z}" - IN CS CH HS' \ - '*-'{t,-qtype}'+[specify type]:type:_dns_types' \ - '*--tls-no-verify[disable TLS verification]' \ + '*-'{t,-qType}'+[specify type]:type:_dns_types' \ + '*-4+[force IPv4 only]' \ + '*-6+[force IPv6 only]' \ + '*-'{x,-reverse}'+[reverse lookup]' \ + '*--timeout+[timeout in seconds]:number [1]' \ + '*--retry+[specify number of UDP query retries]:number [2]' \ + '*--no-edns+[disable EDNS]' \ + '*--edns-ver+[specify EDNS version for query]:version (0-255) [0]' \ + '*-'{D,-dnssec}'+[enable DNSSEC]' \ + '*--expire+[send EDNS expire]' \ + '*-'{n,-nsid}'+[include EDNS name server ID request in query]' \ + '*--no-cookie+[disable sending EDNS cookie]' \ + '*--keep-alive+[request EDNS TCP keepalive]' \ + '*-'{b,-buffer-size}'+[specify UDP buffer size]:size (bytes) [1232]' \ + '*--zflag+[set EDNS z-flag]:decimal, hex or octal [0]' \ + '*--subnet+[set EDNS client subnet]:addr/prefix-length' \ + '*--no-truncate+[ignore truncation in UDP responses]' \ + '*--tcp+[use TCP instead of UDP for queries]' \ + '*--dnscrypt+[use DNSCrypt for queries]' \ + '*-'{T,-tls}'+[use DNS-over-TLS for queries]' \ + '*-'{H,-https}'+[use DNS-over-HTTPS for queries]' \ + '*-'{Q,-quic}'+[use DNS-over-QUIC for queries]' \ + '*--tls-no-verify+[disable TLS verification]' \ '*--tls-host+[set TLS lookup hostname]:host:_hosts' \ - '*-'{-,}'4[force IPv4 only]' \ - '*-'{-,}'6[force IPv6 only]' \ - '*-x+[reverse lookup]:IP address' \ + '*-'{s,-short}'+[print terse output]' \ + '*-'{j,-json}'+[present the results as JSON]' \ + '*-'{x,-xml}'+[present the results as XML]' \ + '*-'{y,-yaml}'+[present the results as YAML]' \ '*: :->args' && ret=0 - # '*--timeout+[timeout in seconds]:number [1]' \ - # '*--retry+[number of tries before failing]:number [2]' \ if [[ -n $state ]]; then if compset -P @; then diff --git a/template.mk b/template.mk index 093bdb2..34d7ab7 100644 --- a/template.mk +++ b/template.mk @@ -52,19 +52,17 @@ lint: fmt vet ## test: run go test test: $(TEST_SOURCES) - $(TEST) -coverprofile=coverage/coverage.out ./... + $(TEST) -v -coverprofile=coverage/coverage.out ./... .PHONY: test-ci test-ci: - $(TEST) -v + $(TEST) ./... ## fuzz: runs fuzz tests fuzz: $(TEST_SOURCES) - cd cli - $(TEST) -fuzz=FuzzFlags -fuzztime 10000x - $(TEST) -fuzz=FuzzDig -fuzztime 10000x - $(TEST) -fuzz=FuzzParseArgs -fuzztime 10000x - cd .. + $(TEST) -fuzz=FuzzFlags -fuzztime 10000x ./cli + $(TEST) -fuzz=FuzzDig -fuzztime 10000x ./cli + $(TEST) -fuzz=FuzzParseArgs -fuzztime 5000x ./cli .PHONY: full_test full_test: test fuzz @@ -80,7 +78,8 @@ cover: coverage/coverage.out .PHONY: clean clean: $(GO) clean - rm doc/$(PROG).1 +# Ignore errors if you remove something that doesn't exist + rm -f doc/$(PROG).1 ## help: Prints this help message .PHONY: help