diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..4b54cc8
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,26 @@
+version: 2
+updates:
+ - package-ecosystem: npm
+ directory: "/"
+ schedule:
+ interval: weekly
+ day: saturday
+ time: "10:00"
+ open-pull-requests-limit: 10
+ versioning-strategy: increase
+ - package-ecosystem: pip
+ directory: "/"
+ schedule:
+ interval: weekly
+ day: saturday
+ time: "10:00"
+ open-pull-requests-limit: 10
+ allow:
+ - dependency-type: direct
+ - dependency-type: indirect
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: weekly
+ day: saturday
+ time: "10:00"
diff --git a/.github/workflows/calibreapp-image-actions.yml b/.github/workflows/calibreapp-image-actions.yml
new file mode 100644
index 0000000..17201f1
--- /dev/null
+++ b/.github/workflows/calibreapp-image-actions.yml
@@ -0,0 +1,24 @@
+name: Compress Images
+
+on:
+ pull_request:
+ paths:
+ - '**.jpg'
+ - '**.jpeg'
+ - '**.png'
+ - '**.webp'
+
+jobs:
+ build:
+ # Only run on Pull Requests within the same repository, and not from forks.
+ if: github.event.pull_request.head.repo.full_name == github.repository
+ name: calibreapp/image-actions
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout Repo
+ uses: actions/checkout@v2
+
+ - name: Compress Images
+ uses: calibreapp/image-actions@1.1.0 # TODO: if they start using a tag like v1, switch to that
+ with:
+ githubToken: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index fad1019..6932e74 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -9,8 +9,8 @@ on:
- "**"
env:
- CI: true
- NODE: 12.x
+ FORCE_COLOR: 2
+ NODE: 14.x
PYTHON_VERSION: "3.7"
jobs:
@@ -22,13 +22,13 @@ jobs:
fetch-depth: 0
- name: Set up Python
- uses: actions/setup-python@v1
+ uses: actions/setup-python@v2.2.2
with:
python-version: "${{ env.PYTHON_VERSION }}"
architecture: "x64"
- name: Set up Node.js
- uses: actions/setup-node@v1
+ uses: actions/setup-node@v2
with:
node-version: "${{ env.NODE }}"
@@ -39,10 +39,12 @@ jobs:
key: ${{ runner.os }}-pip-${{ env.PYTHON_VERSION }}-${{ hashFiles('**/requirements.txt') }}
restore-keys: ${{ runner.os }}-pip-${{ env.PYTHON_VERSION }}-${{ hashFiles('**/requirements.txt') }}
+ # This is needed otherwise pip warns:
+ # Using legacy 'setup.py install' for DEP, since package 'wheel' is not installed.
- run: pip install --upgrade wheel
- name: Install Python dependencies
- run: python3 -m pip install -r requirements.txt
+ run: pip install -r requirements.txt
- name: Install npm dependencies
run: npm ci
diff --git a/docs/core/chronometer-thumb.jpg b/docs/core/chronometer-thumb.jpg
index 377489d..dd19408 100644
Binary files a/docs/core/chronometer-thumb.jpg and b/docs/core/chronometer-thumb.jpg differ
diff --git a/docs/core/chronometer-thumb@2x.jpg b/docs/core/chronometer-thumb@2x.jpg
index 55ba050..c579fe6 100644
Binary files a/docs/core/chronometer-thumb@2x.jpg and b/docs/core/chronometer-thumb@2x.jpg differ
diff --git a/docs/extra.css b/docs/extra.css
index c2c63d7..38ce8b3 100644
--- a/docs/extra.css
+++ b/docs/extra.css
@@ -1,8 +1,3 @@
-body,
-input {
- color: #000;
-}
-
.md-nav {
font-size: 14px;
line-height: 1.4;
@@ -16,9 +11,27 @@ input {
.md-typeset code,
.md-typeset pre {
white-space: pre-wrap;
- color: #532ba8;
+ color: var(--code-color);
}
.text-center {
text-align: center !important;
}
+
+.md-typeset table:not([class]) th {
+ color: var(--table-foreground);
+ background-color: var(--table-background);
+}
+
+[data-md-color-scheme="default"] {
+ --code-color: #532ba8;
+ --table-foreground: var(--md-default-bg-color); /* table header backgrounds */
+ --table-background: var(--md-default-fg-color--light); /* table header (text) */
+}
+
+[data-md-color-scheme="slate"] {
+ --code-color: #a47df8;
+ --md-typeset-a-color: #7c90ff; /* links */
+ --table-foreground: #a3acdf; /* table header (text) */
+ --table-background: #272e53; /* table header backgrounds */
+}
diff --git a/docs/ftldns/compile.md b/docs/ftldns/compile.md
index a9e03ca..e4c33d8 100644
--- a/docs/ftldns/compile.md
+++ b/docs/ftldns/compile.md
@@ -23,9 +23,9 @@ sudo dnf install gcc gmp-devel gmp-static m4 cmake libidn-devel readline-devel x
Compile and install a recent version using:
```bash
-wget https://ftp.gnu.org/gnu/nettle/nettle-3.6.tar.gz
-tar -xzf nettle-3.6.tar.gz
-cd nettle-3.6
+wget https://ftp.gnu.org/gnu/nettle/nettle-3.7.2.tar.gz
+tar -xzf nettle-3.7.2.tar.gz
+cd nettle-3.7.2
./configure --libdir=/usr/local/lib
make -j $(nproc)
sudo make install
diff --git a/docs/ftldns/configfile.md b/docs/ftldns/configfile.md
index 068e076..e583d5c 100755
--- a/docs/ftldns/configfile.md
+++ b/docs/ftldns/configfile.md
@@ -46,7 +46,7 @@ Rate-limiting may be disabled altogether by setting `RATE_LIMIT=0/0` (this resul
#### `MAXLOGAGE=24.0` {#maxlogage data-toc-label='Max Log Age'}
-Up to how many hours of queries should be imported from the database and logs? Maximum is 24.0
+Up to how many hours of queries should be imported from the database and logs? Values greater than the hard-coded maximum of 24h need a locally compiled `FTL` with a changed compile-time value.
#### `PRIVACYLEVEL=0|1|2|3` {#privacylevel data-toc-label='Privacy Level'}
@@ -201,6 +201,10 @@ Print debugging information about database actions. This prints performed SQL st
Prints a list of the detected interfaces on the startup of `pihole-FTL`. Also, prints whether these interfaces are IPv4 or IPv6 interfaces.
+#### `DEBUG_EDNS0=false|true` {#debug_edns0 data-toc-label='EDNS0'}
+
+Print debugging information about received EDNS(0) data.
+
#### `DEBUG_LOCKS=false|true` {#debug_locks data-toc-label='Locks'}
Print information about shared memory locks. Messages will be generated when waiting, obtaining, and releasing a lock.
diff --git a/docs/ftldns/interfaces.md b/docs/ftldns/interfaces.md
new file mode 100644
index 0000000..ced9034
--- /dev/null
+++ b/docs/ftldns/interfaces.md
@@ -0,0 +1,42 @@
+# Interface binding behavior
+
+## Interface listening settings
+
+Pi-hole offers three choices for interface listening behavior on its dashboard:
+
+
+
+### Listen on all interfaces
+
+This setting accepts DNS queries only from hosts whose address is on a local subnet, i.e. a subnet for which an interface exists on the server. It is intended to be set as a default on installation, to allow unconfigured installations to be useful but also safe from being used for DNS amplification attacks if (accidentally) running public.
+
+The `dnsmasq` option `local-service` is used.
+
+### Listen only on interface `eth0`
+
+Listen only on the specified interface. The loopback (`lo`) interface is automatically added to the list of interfaces to use when this option is used. When the optional settings `bind-interfaces` or `bind-dynamic` are in effect, IP alias interface labels (e.g. `eth1:0`) are checked, rather than interface names.
+
+In the degenerate case when an interface has one address, this amounts to the same thing but when an interface has multiple addresses it allows control over which of those addresses are accepted. The same effect is achievable in default mode by using `listen-address`.
+
+The `dnsmasq` option `interface=eth0` is used (the interface may be different).
+
+### Listen on all interfaces, permit all origins
+
+We intentionally add this option to disable any possible `local-service` settings from other files. This truly allows any traffic to be replied to and a dangerous thing to do. You should always ask yourself if the first option doesn't work for you as well.
+
+The `dnsmasq` option `except-interface=nonexisting` is used.
+
+## Technical details
+
+By default, FTL binds the wildcard address, even when it is listening on only some interfaces. It then discards requests that it shouldn't reply to. This has the big advantage of working even when interfaces come and go and change address (this happens way more often than one would think).
+
+If this is not what you want, you can add the option
+
+``` plain
+bind-interfaces
+```
+
+to some file like `/etc/dnsmasq.d/99-user.conf` and see [the comment above](#listen-only-on-interface-eth0). This config forces FTL to really bind only the interfaces it is listening on.
+About the only time when this is useful is when running another nameserver on the same port on the same machine.
+
+{!abbreviations.md!}
diff --git a/docs/guides/vpn/wireguard/server.md b/docs/guides/vpn/wireguard/server.md
index a8be67e..94ed555 100644
--- a/docs/guides/vpn/wireguard/server.md
+++ b/docs/guides/vpn/wireguard/server.md
@@ -12,7 +12,7 @@
Installing everything we will need for a `wireguard` connections is as simple as running:
```bash
-sudo apt-get install wireguard wireguard-tools wireguard-dkms
+sudo apt-get install wireguard wireguard-tools
```
For Ubuntu 18.04 and lower, you need to do some extra steps:
@@ -20,9 +20,11 @@ For Ubuntu 18.04 and lower, you need to do some extra steps:
```bash
sudo add-apt-repository ppa:wireguard/wireguard
sudo apt update
-sudo apt install wireguard wireguard-tools wireguard-dkms
+sudo apt install wireguard wireguard-tools
```
+If you're running a kernel older than 5.6 (check with `uname -r`), you will also need to install `wireguard-dkms`
+
If there is no `wireguard` package available for your system, you can follow the instructions below to compile WireGuard from source.
diff --git a/docs/images/OSWarning.png b/docs/images/OSWarning.png
index 2d78969..4623fbf 100644
Binary files a/docs/images/OSWarning.png and b/docs/images/OSWarning.png differ
diff --git a/docs/images/conditional-forwarding.png b/docs/images/conditional-forwarding.png
index 3aaa2ab..3fb0961 100644
Binary files a/docs/images/conditional-forwarding.png and b/docs/images/conditional-forwarding.png differ
diff --git a/docs/images/fritzbox-advanced-de.png b/docs/images/fritzbox-advanced-de.png
index de6b62c..54ded9e 100644
Binary files a/docs/images/fritzbox-advanced-de.png and b/docs/images/fritzbox-advanced-de.png differ
diff --git a/docs/images/fritzbox-advanced.png b/docs/images/fritzbox-advanced.png
index d089157..ec07573 100644
Binary files a/docs/images/fritzbox-advanced.png and b/docs/images/fritzbox-advanced.png differ
diff --git a/docs/images/fritzbox-dhcp-de.png b/docs/images/fritzbox-dhcp-de.png
index 91a9600..103b513 100644
Binary files a/docs/images/fritzbox-dhcp-de.png and b/docs/images/fritzbox-dhcp-de.png differ
diff --git a/docs/images/fritzbox-dhcp.png b/docs/images/fritzbox-dhcp.png
index 72235b5..1825561 100644
Binary files a/docs/images/fritzbox-dhcp.png and b/docs/images/fritzbox-dhcp.png differ
diff --git a/docs/images/fritzbox-wan-dns-de.png b/docs/images/fritzbox-wan-dns-de.png
index dba59f9..1338d3d 100644
Binary files a/docs/images/fritzbox-wan-dns-de.png and b/docs/images/fritzbox-wan-dns-de.png differ
diff --git a/docs/images/fritzbox-wan-dns.png b/docs/images/fritzbox-wan-dns.png
index 2f04d4d..fb62d40 100644
Binary files a/docs/images/fritzbox-wan-dns.png and b/docs/images/fritzbox-wan-dns.png differ
diff --git a/docs/images/interface-listening.png b/docs/images/interface-listening.png
new file mode 100644
index 0000000..9b9984e
Binary files /dev/null and b/docs/images/interface-listening.png differ
diff --git a/docs/main/basic-install.md b/docs/main/basic-install.md
index 0485ca9..9bb92bd 100644
--- a/docs/main/basic-install.md
+++ b/docs/main/basic-install.md
@@ -28,4 +28,8 @@ wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh
```
+### Alternative 3: Use Docker to deploy Pi-hole
+
+Please refer to the [Pi-hole docker repo](https://github.com/pi-hole/docker-pi-hole) to use the Official Docker Images.
+
{!abbreviations.md!}
diff --git a/docs/main/prerequisites.md b/docs/main/prerequisites.md
index 0c284d2..630723b 100644
--- a/docs/main/prerequisites.md
+++ b/docs/main/prerequisites.md
@@ -27,7 +27,7 @@ The following operating systems are **officially** supported:
| Raspberry Pi OS
(formerly Raspbian) | Stretch / Buster | ARM |
| Ubuntu | 16.x / 18.x / 20.x | ARM / x86_64 |
| Debian | 9 / 10 | ARM / x86_64 / i386 |
-| Fedora | 31 / 32 | ARM / x86_64 |
+| Fedora | 32 / 33 | ARM / x86_64 |
| CentOS | 7 / 8 | x86_64 |
diff --git a/docs/main/update.md b/docs/main/update.md
index 61299c3..749a8c9 100644
--- a/docs/main/update.md
+++ b/docs/main/update.md
@@ -2,8 +2,4 @@ Updating is as simple as running the following command:
`pihole -up`
-### Common issues with updating:
-
-`[Placeholder for solutions to issues]`
-
{!abbreviations.md!}
diff --git a/docs/routers/fritzbox.md b/docs/routers/fritzbox.md
index 65093d4..7e10abc 100644
--- a/docs/routers/fritzbox.md
+++ b/docs/routers/fritzbox.md
@@ -6,7 +6,7 @@ This guide is IPv4 only. You need to adjust for IPv6 accordingly.
### Enable advanced settings
-Some of the the follwowing settings might be visible only if advanced settings are enabled. Therefore, "View" has to be changed to advanced by clicking on "Standard" in the lower left corner.
+Some of the the following settings might be visible only if advanced settings are enabled. Therefore, "View" has to be changed to advanced by clicking on "Standard" in the lower left corner.

diff --git a/mkdocs.yml b/mkdocs.yml
index 018b6db..9afda4c 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -2,7 +2,7 @@ site_name: 'Pi-hole documentation'
site_url: 'https://docs.pi-hole.net/'
repo_url: 'https://github.com/pi-hole/pi-hole'
edit_uri: '../docs/blob/master/docs/'
-copyright: 'Copyright © 2020 Pi-hole LLC'
+copyright: 'Copyright © 2021 Pi-hole LLC'
remote_branch: gh-pages
theme:
name: 'material'
@@ -15,6 +15,27 @@ theme:
font:
text: 'Source Sans Pro'
code: 'Roboto Mono'
+ features:
+ - navigation.top
+ palette:
+
+ # Light mode
+ - media: "(prefers-color-scheme: light)"
+ scheme: default
+ primary: indigo
+ accent: indigo
+ toggle:
+ icon: material/lightbulb-outline
+ name: Switch to dark mode
+
+ # Dark mode
+ - media: "(prefers-color-scheme: dark)"
+ scheme: slate
+ primary: indigo
+ accent: indigo
+ toggle:
+ icon: material/lightbulb
+ name: Switch to light mode
markdown_extensions:
# Code highlighting in ``` ``` blocks
@@ -76,6 +97,7 @@ nav:
- 'FTLDNS':
- 'Overview': ftldns/index.md
- 'Configuration': ftldns/configfile.md
+ - 'Interfaces': ftldns/interfaces.md
- 'DNS resolver': ftldns/dns-resolver.md
- 'DNS cache': ftldns/dns-cache.md
- 'Blocking mode': ftldns/blockingmode.md
diff --git a/overrides/main.html b/overrides/main.html
new file mode 100644
index 0000000..80161fd
--- /dev/null
+++ b/overrides/main.html
@@ -0,0 +1,8 @@
+{% extends "base.html" %}
+
+{% set extracopyright %}
+
+
+ This site is powered by Netlify
+
+{% endset %}
diff --git a/overrides/partials/footer.html b/overrides/partials/footer.html
deleted file mode 100644
index 663752e..0000000
--- a/overrides/partials/footer.html
+++ /dev/null
@@ -1,59 +0,0 @@
-{% import "partials/language.html" as lang with context %}
-
diff --git a/package-lock.json b/package-lock.json
index f1797c9..da00f33 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -703,9 +703,9 @@
}
},
"glob-parent": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
- "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"requires": {
"is-glob": "^4.0.1"
@@ -721,9 +721,9 @@
}
},
"globby": {
- "version": "11.0.2",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz",
- "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==",
+ "version": "11.0.3",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz",
+ "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==",
"dev": true,
"requires": {
"array-union": "^2.1.0",
@@ -1112,14 +1112,6 @@
"linkify-it": "^3.0.1",
"mdurl": "^1.0.1",
"uc.micro": "^1.0.5"
- },
- "dependencies": {
- "entities": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
- "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==",
- "dev": true
- }
}
},
"markdownlint": {
@@ -1132,18 +1124,18 @@
}
},
"markdownlint-cli2": {
- "version": "0.0.14",
- "resolved": "https://registry.npmjs.org/markdownlint-cli2/-/markdownlint-cli2-0.0.14.tgz",
- "integrity": "sha512-h3aXjve9y7pVXJMpka6msP4aGIJamju0Gv7L9knRz3nAdhhaW1aOiRvnLGgqu7BZyp1y7agjWnx8ojh7iLCCeg==",
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/markdownlint-cli2/-/markdownlint-cli2-0.1.3.tgz",
+ "integrity": "sha512-4pbrSEDe/G9PjJnrxKXKTQXyXERHvFH+RjvZrCRiNrVPB0p1/wmQXCkdsKNWlaf+gc4gz4k9u1fj2x28GvFenw==",
"dev": true,
"requires": {
- "globby": "~11.0.2",
+ "globby": "~11.0.3",
"markdownlint": "~0.23.1",
- "markdownlint-cli2-formatter-default": "~0.0.2",
+ "markdownlint-cli2-formatter-default": "^0.0.2",
"markdownlint-rule-helpers": "~0.14.0",
"micromatch": "~4.0.2",
"strip-json-comments": "~3.1.1",
- "yaml": "~1.10.0"
+ "yaml": "~1.10.2"
},
"dependencies": {
"strip-json-comments": {
@@ -1205,13 +1197,13 @@
"dev": true
},
"micromatch": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz",
- "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==",
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
+ "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
"dev": true,
"requires": {
"braces": "^3.0.1",
- "picomatch": "^2.0.5"
+ "picomatch": "^2.2.3"
}
},
"mime": {
@@ -1283,9 +1275,9 @@
}
},
"normalize-url": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz",
- "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==",
+ "version": "4.5.1",
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz",
+ "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==",
"dev": true
},
"nth-check": {
@@ -1408,9 +1400,9 @@
"dev": true
},
"picomatch": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
- "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz",
+ "integrity": "sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==",
"dev": true
},
"prepend-http": {
@@ -1439,9 +1431,9 @@
}
},
"queue-microtask": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz",
- "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==",
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true
},
"quick-lru": {
@@ -1483,9 +1475,9 @@
},
"dependencies": {
"hosted-git-info": {
- "version": "2.8.8",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
- "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
"normalize-package-data": {
@@ -1760,9 +1752,9 @@
}
},
"trim-newlines": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz",
- "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
+ "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
"dev": true
},
"type-fest": {
@@ -1904,9 +1896,9 @@
"dev": true
},
"yaml": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
- "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==",
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
"dev": true
},
"yargs-parser": {
diff --git a/package.json b/package.json
index 19c7c69..651989c 100644
--- a/package.json
+++ b/package.json
@@ -23,6 +23,6 @@
},
"devDependencies": {
"linkinator": "^2.13.6",
- "markdownlint-cli2": "0.0.14"
+ "markdownlint-cli2": "0.1.3"
}
}
diff --git a/requirements.txt b/requirements.txt
index 4e0e556..24f6ac6 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,5 +1,5 @@
markdown-include==0.6.0
mkdocs==1.1.2
-mkdocs-git-revision-date-localized-plugin==0.8
-mkdocs-material==7.0.4
-mkdocs-redirects==1.0.1
+mkdocs-git-revision-date-localized-plugin==0.9.2
+mkdocs-material==7.1.6
+mkdocs-redirects==1.0.3