Commit Graph

32 Commits

Author SHA1 Message Date
Sam Therapy a5980be3cc
docs: Use the docs folder more
Mirror Push / mirror (push) Successful in 7s Details
Test / test (stable) (push) Successful in 36s Details
Test / test (oldstable) (push) Successful in 56s Details
Also rename it from doc to docs

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-03-23 22:05:57 +01:00
Sam Therapy 58cee5b3c9
docs: Add more documentation
Mirror Push / mirror (push) Successful in 6s Details
Test / test (stable) (push) Successful in 39s Details
Test / test (oldstable) (push) Successful in 56s Details
Add the "official" logo.
Also run golangci-lint

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-03-23 22:00:01 +01:00
Sam Therapy 21047275bf
fix(quic): A workaround for adguard not working over QUIC
Mirror Push / mirror (push) Successful in 6s Details
Test / test (stable) (push) Successful in 41s Details
Test / test (oldstable) (push) Successful in 52s Details
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-03-15 18:20:03 +01:00
Sam Therapy 59fa146d7f
feat!(quic): Remove gccgo support
Mirror Push / mirror (push) Successful in 7s Details
Gitea Release / release (push) Failing after 22s Details
Test / test (stable) (push) Successful in 38s Details
Test / test (oldstable) (push) Successful in 1m23s Details
Since gccgo is stuck at 1.18 without generics, drop support
sadge

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-11-08 21:51:44 +01:00
Sam Therapy 66855b5542 make test happy for some reason
continuous-integration/drone/push Build is failing Details
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-06-02 21:10:05 +00:00
Sam Therapy ccc9df39b6 update QUIC code to work with new quic-go version
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-06-02 21:10:05 +00:00
Sam Therapy db77f2315c
fix(https): Small HTTPS annoyance fixes
continuous-integration/drone/push Build is failing Details
Fixes /dns-query being appended on failure
Fixes /dns-query from being appended when it should not be

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-06-02 22:54:02 +02:00
Sam Therapy 27ece358c6
fix(resolvers): QUIC: close as soon as the writing is done
continuous-integration/drone/push Build is passing Details
This is required by RFC 9250, and would break some requests when done wrong

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-03-09 23:39:00 +01:00
Sam Therapy 3423958809
fix(deps): Use my fork of the dnscrypt lib (#185)
continuous-integration/drone/push Build is passing Details
- Uses newer versions of libraries
- Nicer URL (subjective)
- it is mine :)

Reviewed-on: #185
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2023-03-06 22:41:12 +00:00
Sam Therapy e782c9cb23
feat: change import URL
continuous-integration/drone/push Build is passing Details
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-02-17 19:18:58 +01:00
Sam Therapy 6d9690c44f
fix: lint
continuous-integration/drone/push Build is passing Details
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-02-04 15:37:06 -06:00
Sam Therapy bc6e7cd759
fix(deps): Use new quic-go location + update
continuous-integration/drone/push Build is failing Details
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2023-02-04 14:27:47 +01:00
grumbulon d93eccc064
feat: RFC-8427 (#171)
continuous-integration/drone/push Build is passing Details
This PR will make the JSON response body be based off [RFC-8427](https://www.rfc-editor.org/rfc/rfc8427.html) which will be similar to [kdig's](https://www.knot-dns.cz/docs/2.6/html/man_kdig.html) JSON output.

Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #171
Reviewed-by: Sam Therapy <sam@samtherapy.net>
Co-authored-by: grumbulon <grumbulon@grumbulon.xyz>
Co-committed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-27 20:07:09 +00:00
Sam Therapy fdba9a0a41
refactor: Add named returns (#168)
continuous-integration/drone/push Build is passing Details
Add some named returns

Co-authored-by: grumbulon <grumbulon@grumbulon.xyz>
Reviewed-on: #168
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-17 16:52:50 +00:00
Sam Therapy 792ddecf6c
fix(print): use any on TTL (#169)
continuous-integration/drone/push Build is passing Details
This allows JSON to use either an int or string depending on output

Reviewed-on: #169
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-15 19:30:01 +00:00
Sam Therapy 530ef06ee1
feat: Trace (#162)
continuous-integration/drone/push Build is passing Details
This PR should add the trace option, used by +trace and --trace

TODO
- [x] Making the trace work properly
- [x] Documentation adding
- [x] Completion adding

Co-authored-by: grumbulon <grumbulon@grumbulon.xyz>
Reviewed-on: #162
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-10 17:51:49 +00:00
Sam Therapy 185a79e1c2
fix(printable): actually hide sections if requested (#164)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #164
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-08 15:21:10 +00:00
Sam Therapy 64768f0956
fix(errors): put exported errors in util (#161)
continuous-integration/drone/push Build is passing Details
Centralize them in one place

Reviewed-on: #161
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-12-06 21:39:28 +00:00
grumbulon 5d67ffaad3
fix(log): log levels were wrong for two format statements (#157)
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build encountered an error Details
Reviewed-on: #157
Reviewed-by: Sam Therapy <sam@samtherapy.net>
Co-authored-by: grumbulon <grumbulon@grumbulon.xyz>
Co-committed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-11-20 00:25:35 +00:00
Sam Therapy dfa14cbcdf
feat(gccgo): allow compilation with gccgo (#156)
continuous-integration/drone/push Build is passing Details
This PR disables quic-go when compiling with gccgo since gccgo does not support generics

Reviewed-on: #156
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-11-19 18:25:04 +00:00
Sam Therapy b1fa25a9a0
feat(dig): Dig +https (#147)
continuous-integration/drone/push Build is passing Details
BREAKING CHANGE: DNS-over-HTTPS requests are now dealt with differently

Using +https or -H now implies adding /dns-query (like dig)
Using the implied https:// prefix follows the old behaviour (nothing added or implied)

Reviewed-on: #147
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-10-20 21:34:24 +00:00
Sam Therapy b80219019e
Add check for port at the end (#142)
continuous-integration/drone/push Build is passing Details
Fixes #141

Before, a failure would add on the port, eg.
```
127.0.0.1:53
127.0.0.1:53:53
127.0.0.1:53:53:53 // Go actually thinks this is now an IPv6 address, interesting
```

Now a check is added so this doesn't happen

Reviewed-on: #142
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-10-16 14:25:13 +00:00
Sam Therapy dc4edd55bb
fix(query): fix printing irregularities (#140)
continuous-integration/drone/push Build is passing Details
1. Before, the port printed was duplicated, eg.
`;; SERVER: [::1]:53:53 (UDP)` when making query. This has been fixed (not sure what caused it)
2. JSON/XML/YAML date formatting to be compliant with RFC3339 (thanks, std/time!)

Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #140
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-10-14 16:51:27 +00:00
Sam Therapy 81da49093d
refactor: Make all calls to options pointers (#132)
continuous-integration/drone/push Build is passing Details
Instead of copying the opts struct every time it gets passed around, it should be created once and passed through reference.

This should reduce memory utilization, unfortunately I cannot test it since this program runs so fast pprof won't report anything useful.

I think I found all of them 🙂

Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #132
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-10-13 12:49:36 +00:00
Sam Therapy 56baff4e18 test: forgot one
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2022-09-28 19:07:46 +00:00
Sam Therapy f01f2bc15a
feat(resolvers/HTTPS): add HTTP proxy support (#119)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #119
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-09-28 18:08:56 +00:00
Sam Therapy c053c077c8
test: Add retries to all tests (#121)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #121
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-09-28 17:51:35 +00:00
Sam Therapy 60643e2b3e
Remove AUR submodule
continuous-integration/drone/push Build was killed Details
2022-09-27 15:36:34 +00:00
Sam Therapy 434632884c
chore(test): Add more retires (#115)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #115
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-09-27 13:54:17 +00:00
grumbulon 3a0a8f015a chore(Refactor) (#110)
continuous-integration/drone/push Build is passing Details
refactor

Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #110
Reviewed-by: Sam <sam@samtherapy.net>
2022-09-24 23:11:09 +00:00
Sam Therapy 9746ae0a6f feat: more API work
continuous-integration/drone/push Build was killed Details
Reviewed-on: #94
Reviewed-by: grumbulon <grumbulon@grumbulon.xyz>
2022-09-15 11:02:43 +00:00
Sam Therapy 068706ae9a (feat)Completions and documentation (#78)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #78
2022-09-04 23:28:47 +00:00