Tom Limoncelli
1b2f5d4d34
BUGFIX: IDN support is broken for domain names ( #3845 )
...
# Issue
Fixes https://github.com/StackExchange/dnscontrol/issues/3842
CC @das7pad
# Resolution
Convert domain.Name to IDN earlier in the pipeline. Hack the --domains
processing to convert everything to IDN.
* Domain names are now stored 3 ways: The original input from
dnsconfig.js, canonical IDN format (`xn--...`), and Unicode format. All
are downcased. Providers that haven't been updated will receive the IDN
format instead of the original input format. This might break some
providers but only for users with unicode in their D("domain.tld").
PLEASE TEST YOUR PROVIDER.
* BIND filename formatting options have been added to access the new
formats.
# Breaking changes
* BIND zonefiles may change. The default used the name input in the D()
statement. It now defaults to the IDN name + "!tag" if there is a tag.
* Providers that are not IDN-aware may break (hopefully only if they
weren't processing IDN already)
---------
Co-authored-by: Jakob Ackermann <das7pad@outlook.com>
2025-11-29 12:17:44 -05:00
Ishan Jain
e1830abb58
NEW PROVIDER: ADGUARDHOME ( #3638 )
2025-07-09 12:06:34 -04:00
Tom Limoncelli
7a4c16f447
BUGFIX: REV fails in D_EXTEND for IPv6 addresses ( #3552 )
2025-05-03 08:20:44 -04:00
Eli Heady
48c99f7065
Improve tagged domain handling in support of Split Horizon feature ( #3444 )
...
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2025-02-25 12:27:24 -05:00
Tom Limoncelli
5dbe5e84c9
CHORE: Fix lint warnings from golangci-lint ( #3311 )
2025-01-13 11:33:12 -05:00
Tom Limoncelli
e2325014de
TESTING: parse_tests: Generate post-processed json files
2025-01-03 13:19:39 -05:00
fuero
94a0cfcba3
New Feature: HASH() adds hashing functions to dnsconfig.js language ( #3085 )
...
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2024-08-21 09:21:39 -04:00
Tom Limoncelli
088306883d
CLOUDFLAREAPI: Add CF_SINGLE_REDIRECT to manage "dynamic single" redirects ( #3035 )
2024-07-08 12:38:38 -04:00
Tom Limoncelli
e9b4b9b34d
CHORE: Rename js.Javascript to js.JavaScript ( #2405 )
2023-05-30 18:02:24 -04:00
nemunaire
5ae231030e
Update version in go.mod ( #2382 )
2023-05-20 13:21:45 -04:00
Tom Limoncelli
54fc2e9ce3
NEW FEATURE: diff2: A better "diff" mechanism ( #1852 )
2022-12-11 17:28:58 -05:00
Tom Limoncelli
ccb582b278
CHORE: Linting ( #1704 )
...
* Remove deprecated io/ioutil
* fixup!
* staticcheck and linting
* revert models/provider.go
* Fix imports to new style
* linting
2022-08-14 20:46:56 -04:00
Tom Limoncelli
cd61c2c766
CHORE: Remove deprecated io/ioutil ( #1699 )
...
* Remove deprecated io/ioutil
* fixup!
* fixup!
2022-08-14 12:50:15 -04:00
Tom Limoncelli
9e6d642e35
NEW FEATURE: Moving provider TYPE from dnsconfig.js to creds.json ( #1500 )
...
Fixes https://github.com/StackExchange/dnscontrol/issues/1457
* New-style creds.json implememented backwards compatible
* Update tests
* Update docs
* Assume new-style TYPE
2022-05-08 14:23:45 -04:00
F.D.Castel
0d12eb7dc6
CLOUDFLAREAPI: Adds CF_WORKER_ROUTE ( #1243 )
...
* CLOUDFLAREAPI: Adds CF_WORKER_ROUTE.
- CLOUDFLAREAPI: Initial support for CF_WORKER_ROUTE.
- Put CF_WORKER_ROUTE behind a per-domain feature-flag.
- Adds Integration Test.
- Create Cloudflare workers for tests.
- Updates documentation.
* Workaround for updateWorkerRoute causing stack overflow.
* Sets AccountID.
* Updates to latest master (Thanks @tresni!).
* Removes $CLOUDFLAREAPI_ACCOUNTNAME.
* Add alltrue() filter and -cfworkers flag
* Final workers changes
* alltrue() should be implemented like other filters.
* Update documentation.
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-10-11 16:04:49 -04:00
Tom Limoncelli
eaa382e58d
js_test.go should leave behind actuals
2021-02-01 07:33:41 -05:00
Tom Limoncelli
063d550816
js_test.go should generate & test zonefile output too ( #986 )
...
* js_test.go: Do a zonefile test if $TESTNAME/parse_tests/{zonefile} exists.
* Add parse_tests zone files for all the tests that make sense.
* js_test.go: Addd the test datafile when displaying failures.
* 007-importTransformTTL.js: Was referring to a non-existent domain.
* 012-duration.js: Had duplicate DNS records.
* 029-dextendsub.js: Move CF-related tests to separate test.
* validate.go: Report non-existent domains as an error.
* cloudflareProvider.go: newCloudflare should not talk to the API.
2020-12-03 09:33:39 -05:00
Tom Limoncelli
80c81b990a
TESTING: Fix broken test
2020-10-30 12:04:41 -04:00
Tom Limoncelli
dba20387bf
Fix D_EXTEND matching bug ( #888 )
...
* Use a standard JSON comparison tool
* Fixes https://github.com/StackExchange/dnscontrol/issues/886
* Delete file in wrong place.
* Remove the need for minify
2020-10-07 16:03:36 -04:00
Tom Limoncelli
061ea63322
require() should handle paths as relative (like nodeJS) ( #443 )
...
* Integrate @nlowe's documentation and tests
* Use filepath.Clean() instead of filepath.Abs()
* Use a stackless implementation
2019-01-29 10:29:00 -05:00
Tom Limoncelli
ff3d446681
Codestyle: Fix formatting on parse_test JSON ( #427 )
...
* Fix failing parse_test 021
* Fix JSON formatting in parse_test directory
* js_test.go now reports json content length
2018-12-13 11:46:43 -05:00
Craig Peterson
2a7b382767
Better validate NAMESERVER format. ( #350 )
...
* remove misleading ip field we don't touch
2018-03-22 11:52:52 -04:00
Tom Limoncelli
b7c251190f
Vet and Lint the entire system ( #296 )
...
* govet and golint corrections
2018-01-09 12:53:16 -05:00
Pat Moroney
106790b0d5
throw an error if a domain name is declared more than once ( #247 )
...
* throw an error if a domain name is declared more than once in the js file
2017-11-14 23:14:45 -05:00
Craig Peterson
710d14b1a9
tests that would have caught tag renaming bug. js tests now don't marahsl expected through the go object. Instead minify both sides to compare
2017-07-20 17:41:15 -04:00
Craig Peterson
5abf06e059
merge/fix
2017-06-05 13:58:02 -04:00
Craig Peterson
42ef9f4b9e
moving a bunch of packages under pkg ( #124 )
...
* moving a bunch of packages under pkg
* fix gen
* fix tst
* oops
* fix test fo real
* parse mx/a
2017-05-25 14:25:39 -04:00