Merge pull request #339 from pterodactyl/1.3.0

1.3.0
This commit is contained in:
Dane Everitt 2021-03-06 11:58:14 -08:00 committed by GitHub
commit b71f89f4e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 316 additions and 279 deletions

View File

@ -1,66 +0,0 @@
server_tokens off;
server {
listen 80;
server_name <domain>;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name <domain>;
root /var/www/pterodactyl/public;
index index.php;
access_log /var/log/nginx/pterodactyl.app-access.log;
error_log /var/log/nginx/pterodactyl.app-error.log error;
# allow larger file uploads and longer script runtimes
client_max_body_size 100m;
client_body_timeout 120s;
sendfile off;
# SSL Configuration
ssl_certificate /etc/letsencrypt/live/<domain>/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/<domain>/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
ssl_prefer_server_ciphers on;
# See https://hstspreload.org/ before uncommenting the line below.
# add_header Strict-Transport-Security "max-age=15768000; preload;";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header Content-Security-Policy "frame-ancestors 'self'";
add_header X-Frame-Options DENY;
add_header Referrer-Policy same-origin;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PHP_VALUE "upload_max_filesize = 100M \n post_max_size=100M";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
include /etc/nginx/fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}

View File

@ -24,7 +24,7 @@ server {
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_pass unix:/run/php/php8.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PHP_VALUE "upload_max_filesize = 100M \n post_max_size=100M";

View File

@ -45,7 +45,7 @@ server {
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_pass unix:/run/php/php8.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PHP_VALUE "upload_max_filesize = 100M \n post_max_size=100M";

View File

@ -4,7 +4,7 @@ module.exports = {
description: 'Pterodactyl is an open-source game server management panel built with PHP 7, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.',
plugins: [
['@vuepress/google-analytics', {
ga: 'UA-12345678-9'
ga: 'UA-87324178-3'
},],
['@vuepress/search', {
searchMaxSuggestions: 10
@ -145,14 +145,15 @@ module.exports = {
currentVersion: '1.0',
versions: [
{
title: '1.2',
title: '1.3',
name: '1.0',
status: 'stable',
children: [
'/getting_started',
'/webserver_configuration',
'/upgrading',
'/additional_configuration'
'/additional_configuration',
'/updating',
'/legacy_upgrade',
]
}
]
@ -164,7 +165,7 @@ module.exports = {
currentVersion: '1.0',
versions: [
{
title: '1.2',
title: '1.3',
name: '1.0',
status: 'stable',
children: [

View File

@ -20,7 +20,10 @@ export default ({
]
}
return undefined
}).filter(x => x).flat()
}).filter(x => x).flat().concat([
{ path: '/panel/1.0/upgrade/1.0.html', redirect: '/panel/1.0/updating.html' },
{ path: '/panel/1.0/upgrade/0.7_to_1.0.html', redirect: '/panel/1.0/legacy_upgrade.html' },
])
)
})
}
@ -38,4 +41,4 @@ function pathJoin(...parts) {
var separator = '/';
var replace = new RegExp(separator + '{1,}', 'g');
return parts.join(separator).replace(replace, separator);
}
}

62
guides/php_upgrade.md Normal file
View File

@ -0,0 +1,62 @@
# Upgrading PHP
This documentation includes instructions for upgrading your system to the latest version of PHP. Please reference the
table below to check what version you need for your version of Pterodactyl.
| Panel Version | PHP Version |
| ------------- | ------------ |
| 1.0.0 - 1.2.0 | 7.3, 7.4 |
| 1.3.0+ | 7.4, 8.0 |
## Install PHP
In order to install PHP 8.0, you will need to run the following command. Please keep in mind different operating systems
may have slightly different requirements for how this command is formatted.
```bash
apt -y install php8.0 php8.0-{cli,gd,mysql,pdo,mbstring,tokenizer,bcmath,xml,fpm,curl,zip}
```
## Update Composer
As of `Panel@1.3.0` we require `composer` v2. To update composer you will need to run the following command which will
perform the composer self-update process and move you over to version 2.
```bash
composer self-update --2
```
## Webserver Configuration
:::: tabs
::: tab "NGINX"
After upgrading to PHP 8.0, you will most likely need to update your NGINX configuration. Your configuration file
is most likely called `pterodactyl.conf` and located in the `/etc/nginx/sites-available/` directory, or if on CentOS,
`/etc/nginx/conf.d/`.
Make sure to update the path in the command below to reflect the actual location of your configuration file.
``` bash
sed -i -e 's/php7.[0-4]-fpm.sock/php8.0-fpm.sock/' /etc/nginx/sites-available/pterodactyl.conf
```
Once you have edited the file run the command below to reload nginx and apply your changes.
```bash
systemctl reload nginx
```
:::
::: tab "Apache"
Run the commands below to disable PHP 7.4 and enable PHP 8.0 when serving requests. If you are upgrading from
PHP 7.4 change the value in the command below to reflect that.
``` bash
# Hint: a2dismod = a2_enable_module 🤯
a2enmod php8.0
# Hint: a2dismod = a2_disable_module 🤯
a2dismod php7.3
```
:::
::::
#### [Return to the 1.X.X Upgrade Guide](/panel/1.0/upgrade/1.0.md#fetch-updated-files)

View File

@ -4,7 +4,7 @@
"jquery": "^3.3.1",
"slick-carousel": "^1.8.1",
"vue-tabs-component": "^1.5.0",
"vuepress": "^1.5.4",
"vuepress": "^1.8.2",
"vuepress-plugin-container": "^2.1.3",
"vuepress-plugin-tabs": "^0.3.0"
},

View File

@ -32,11 +32,15 @@ this software on an OpenVZ based system you will &mdash; most likely &mdash; not
| | 10 | :white_check_mark: | |
## Dependencies
* PHP `7.3` or `7.4` (recommended) with the following extensions: `cli`, `openssl`, `gd`, `mysql`, `PDO`, `mbstring`, `tokenizer`, `bcmath`, `xml` or `dom`, `curl`, `zip`, and `fpm` if you are planning to use NGINX.
* PHP `7.4` or `8.0` (recommended) with the following extensions: `cli`, `openssl`, `gd`, `mysql`, `PDO`, `mbstring`, `tokenizer`, `bcmath`, `xml` or `dom`, `curl`, `zip`, and `fpm` if you are planning to use NGINX.
* MySQL `5.7.22` or higher (MySQL `8` recommended) **or** MariaDB `10.2` or higher.
* Redis (`redis-server`)
* A webserver (Apache, NGINX, Caddy, etc.)
* `curl`, `tar`, `unzip`, `git`, and `composer`
* `curl`
* `tar`
* `unzip`
* `git`
* `composer` v2
### Example Dependency Installation
The commands below are simply an example of how you might install these dependencies. Please consult with your
@ -58,7 +62,7 @@ apt update
apt-add-repository universe
# Install Dependencies
apt -y install php7.4 php7.4-{cli,gd,mysql,pdo,mbstring,tokenizer,bcmath,xml,fpm,curl,zip} mariadb-server nginx tar unzip git redis-server
apt -y install php8.0 php8.0-{cli,gd,mysql,pdo,mbstring,tokenizer,bcmath,xml,fpm,curl,zip} mariadb-server nginx tar unzip git redis-server
```
### Installing Composer
@ -206,7 +210,7 @@ If you are not using `redis` for anything you should remove the `After=` line, o
when the service starts.
:::
If you are are using redis for your system, you will want to make sure to enable that it will start on boot. You can do that by running the following command:
If you are using redis for your system, you will want to make sure to enable that it will start on boot. You can do that by running the following command:
```bash
sudo systemctl enable --now redis-server
```

View File

@ -1,6 +1,6 @@
# Upgrading 0.7 Series to 1.0 Series
This upgrade guide is for **upgrading from 0.7.X to 1.1.0**. If you are trying to do an upgrade on a 1.X Panel
please [use this guide instead](/panel/1.0/upgrade/1.0.md). During this upgrade process you will have some periods
# Legacy Upgrades
This upgrade guide is for **upgrading from 0.7.X to 1.3.x**. If you are trying to do an upgrade on a 1.X Panel
please [use this guide instead](/panel/1.0/updating.md). During this upgrade process you will have some periods
of Panel unavailability, however none of the underlying game server instances will be stopped.
## Enter Maintenance Mode
@ -16,7 +16,10 @@ php artisan down
You'll need to make sure your system dependencies are up to date before performing this upgrade. Please
reference the list below to ensure you have all of the required versions.
* PHP `7.3+` (`7.4` recommended) with the following extensions: `cli`, `openssl`, `gd`, `mysql`, `PDO`, `mbstring`, `tokenizer`, `bcmath`, `xml` or `dom`, `curl`, `zip`, and `fpm` if you are planning to use nginx
* PHP `7.4` or `8.0` (recommended) with the following extensions: `cli`, `openssl`, `gd`, `mysql`, `PDO`, `mbstring`,
`tokenizer`, `bcmath`, `xml` or `dom`, `curl`, `zip`, and `fpm` if you are planning to use nginx. See our guide
for [Upgrading PHP](/guides/php_upgrade.md) for details.
* Composer v2 (`composer self-update --2`)
::: warning Nginx
If you upgrade your PHP version and are using nginx as your webserver, you will have to update the

127
panel/1.0/updating.md Normal file
View File

@ -0,0 +1,127 @@
# Updating the Panel
This documentation covers the process for updating within the `1.x` series of releases. This means updating from
&mdash; for example &mdash; `1.2.2` to `1.3.0`. **Do not use this guide for upgrading from `0.7`.**
## Panel Version Requirements
Each version of Pterodactyl Panel also has a corresponding minimum version of Wings that
is required for it to run. Please see the chart below for how these versions line up. In
most cases your base Wings version should match that of your Panel.
| Panel Version | Wings Version | Supported |
| ------------- | ------------- | --------- |
| 1.0.x | 1.0.x | |
| 1.1.x | 1.1.x | |
| 1.2.x | 1.2.x | |
| **1.3.x** | **1.3.x** | ✅ |
## Update Dependencies
::: warning Minimum PHP Version Changed
The latest versions of Pterodactyl Panel — including the `1.3` release — require a **minimum version of PHP 7.4** and
Composer v2.
:::
* PHP `7.4` or `8.0` (recommended)
* Composer `2.X`
Previous versions of Pterodactyl allowed for you to be running PHP 7.3. However, due to dependency updates and
the fact that 7.3 is now EOL we have bumped the minimum acceptable PHP version to 7.4 — PHP 8 is recommended. You
will also need to be using Composer v2.
**Before continuing**, please ensure that your system has been upgraded to at least PHP 7.4 by running `php -v`. You
should see output similar to the output below. If you do not see at least PHP 7.4 you will need to upgrade by following
our [PHP Upgrade Guide](/guides/php_upgrade.md) and then return to this documentation.
``` bash
vagrant@pterodactyl:~/app$ php -v
PHP 8.0.1 (cli) (built: Jan 13 2021 08:22:35) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.1, Copyright (c) Zend Technologies
with Zend OPcache v8.0.1, Copyright (c), by Zend Technologies
vagrant@pterodactyl:~/app$ composer --version
Composer version 2.0.8 2020-12-03 17:20:38
```
## Fetch Updated Files
### Enter Maintenance Mode
Whenever you are performing an update you should be sure to place your Panel into maintenance mode. This will prevent
users from encountering unexpected errors and ensure everything can be updated before users encounter
potentially new features.
``` bash
php artisan down
```
### Download the Update
The first step in the update process is to download the new panel files from GitHub. The command below will download
the release archive for the most recent version of Pterodactyl and save it in the current directory. Now is a good time
to ensure that you're in the `/var/www/pterodactyl` directory as the command below will automatically unpack the archive
into your current folder.
``` bash
curl -L https://github.com/pterodactyl/panel/releases/latest/download/panel.tar.gz | tar -xzv
```
Once all of the files are downloaded we need to set the correct permissions on the cache and storage directories to avoid
any webserver related errors.
``` bash
chmod -R 755 storage/* bootstrap/cache
```
## Update Dependencies
After you've downloaded all of the new files you will need to upgrade the core components of the panel. To do this,
simply run the commands below and follow any prompts.
``` bash
composer install --no-dev --optimize-autoloader
```
## Clear Compiled Template Cache
You'll also want to clear the compiled template cache to ensure that new and modified templates show up correctly for
users.
``` bash
php artisan view:clear
php artisan config:clear
```
## Database Updates
You'll also need to update your database schema for the newest version of Pterodactyl. Running the command below
will update the schema and ensure the default eggs we ship are up to date (and add any new ones we might have). Just
remember, _never edit core eggs we ship_! They will be overwritten by this update process.
``` bash
php artisan migrate --seed --force
```
## Set Permissions
The last step is to set the proper owner of the files to be the user that runs your webserver. In most cases this
is `www-data` but can vary from system to system &mdash; sometimes being `nginx`, `caddy`, `apache`, or even `nobody`.
``` bash
# If using NGINX or Apache (not on CentOS):
chown -R www-data:www-data /var/www/pterodactyl/*
# If using NGINX on CentOS:
chown -R nginx:nginx /var/www/pterodactyl/*
# If using Apache on CentOS
chown -R apache:apache /var/www/pterodactyl/*
```
## Restarting Queue Workers
After _every_ update you should restart the queue worker to ensure that the new code is loaded in and used.
``` bash
php artisan queue:restart
```
### Exit Maintenance Mode
Now that everything has been updated you need to exit maintenance mode so that the Panel can resume accepting
connections.
``` bash
php artisan up
```
#### [Final Step: Upgrade Wings](/wings/1.0/upgrading.md)

View File

@ -1,77 +0,0 @@
# Upgrading 1.0 Series
This documentation covers the process for upgrading within the `1.X` series of releases. This means upgrading from
&mdash; for example &mdash; `1.0.3` to `1.1.0`. **Do not use this guide for upgrading from `0.7`.**
::: danger
Seriously, **stop** and read this warning. **Do not use this guide to upgrade from the 0.7 series.** You _will_
break your panel, and you _will_ lose access to your servers.
:::
## Fetch Updated Files
The first step in the update process is to download the new panel files from GitHub. The command below will download
the release archive for the most recent version of Pterodactyl and save it in the current directory. Now is a good time
to ensure that you're in the `/var/www/pterodactyl` directory as the command below will automatically unpack the archive
into your current folder.
::: warning
`Panel@1.2.0` requires `Wings@1.2.0` in order for Wings to run properly!
:::
``` bash
curl -L https://github.com/pterodactyl/panel/releases/latest/download/panel.tar.gz | tar -xzv
```
Once all of the files are downloaded we need to set the correct permissions on the cache and storage directories to avoid
any webserver related errors.
``` bash
chmod -R 755 storage/* bootstrap/cache
```
## Update Dependencies
After you've downloaded all of the new files you will need to upgrade the core components of the panel. To do this,
simply run the commands below and follow any prompts.
``` bash
composer install --no-dev --optimize-autoloader
```
## Clear Compiled Template Cache
You'll also want to clear the compiled template cache to ensure that new and modified templates show up correctly for
users.
``` bash
php artisan view:clear
php artisan config:clear
```
## Database Updates
You'll also need to update your database schema for the newest version of Pterodactyl. Running the command below
will update the schema and ensure the default eggs we ship are up to date (and add any new ones we might have). Just
remember, _never edit core eggs we ship_! They will be overwritten by this update process.
``` bash
php artisan migrate --seed --force
```
## Set Permissions
The last step is to set the proper owner of the files to be the user that runs your webserver. In most cases this
is `www-data` but can vary from system to system &mdash; sometimes being `nginx`, `apache`, or even `nobody`.
``` bash
# If using NGINX or Apache (not on CentOS):
chown -R www-data:www-data *
# If using NGINX on CentOS:
chown -R nginx:nginx *
# If using Apache on CentOS
chown -R apache:apache *
```
## Restarting Queue Workers
After _every_ update you should restart the queue worker to ensure that the new code is loaded in and used.
``` bash
php artisan queue:restart
```

View File

@ -1,27 +0,0 @@
# Upgrading
Upgrading the Panel is a relatively simple process. Below you will find a list of articles that will walk you through
the upgrade process for each version of the software.
## Maintenance Mode
Whenever you are performing an upgrade you should be sure to place your Panel into maintenance mode. This will prevent
users from encountering unexpected errors and ensure everything can be upgraded before users encounter
potentially new features.
``` bash
# Put the Panel into maintenance mode and deny user access
php artisan down
# Bring the Panel back up to receive connections.
php artisan up
```
## Restarting Queue Workers
After _every_ update you should restart the queue worker to ensure that the new code is loaded in and used.
``` bash
php artisan queue:restart
```
## Version Specific Guides
* [Upgrading from 0.7.X](/panel/1.0/upgrade/0.7_to_1.0.md)
* [1.X.X series](/panel/1.0/upgrade/1.0.md)

View File

@ -9,12 +9,10 @@ When using the SSL configuration you MUST create SSL certificates, otherwise you
:::: tabs
::: tab "Nginx With SSL"
### NGINX With SSL
You should paste the contents of the file below, replacing `<domain>` with your domain name being used in a file called
`pterodactyl.conf` and place it in `/etc/nginx/sites-available/`, or &mdash; if on CentOS, `/etc/nginx/conf.d/`.
<<< @/.snippets/webservers/nginx-php7.4.conf{5,11,26-27}
<<< @/.snippets/webservers/nginx-php8.0.conf{5,11,26-27}
### Enabling Configuration
@ -30,12 +28,10 @@ systemctl restart nginx
:::
::: tab "Nginx Without SSL"
### NGINX Without SSL
You should paste the contents of the file below, replacing `<domain>` with your domain name being used in a file called
`pterodactyl.conf` and place it in `/etc/nginx/sites-available/`, or &mdash; if on CentOS, `/etc/nginx/conf.d/`.
<<< @/.snippets/webservers/nginx-php7.4-nossl.conf{3}
<<< @/.snippets/webservers/nginx-php8.0-nossl.conf{3}
### Enabling Configuration
The final step is to enable your NGINX configuration and restart it.
@ -50,9 +46,6 @@ systemctl restart nginx
:::
::: tab "Apache With SSL"
### Apache With SSL
You should paste the contents of the file below, replacing `<domain>` with your domain name being used in a file called
`pterodactyl.conf` and place it in `/etc/apache2/sites-available`, or &mdash; if on CentOS, `/etc/httpd/conf.d/`.
@ -73,9 +66,6 @@ systemctl restart apache2
:::
::: tab "Apache Without SSL"
### Apache Without SSL
You should paste the contents of the file below, replacing `<domain>` with your domain name being used in a file called
`pterodactyl.conf` and place it in `/etc/apache2/sites-available`, or &mdash; if on CentOS, `/etc/httpd/conf.d/`.

View File

@ -1,7 +1,8 @@
# Creating SSL Certificates
This tutorial briefly covers creating new SSL certificates for your panel and daemon.
## Method 1: Using Certbot
:::: tabs
::: tab "Method 1: Certbot"
To begin, we will be installing certbot, a simple script that will automatically renew our certificates and allow much
cleaner creation of them. The command below is for Ubuntu distributions, but you can always check [Certbot's official
site](https://certbot.eff.org/) for installation instructions. We have also included a command below to install certbot's
@ -65,8 +66,8 @@ Once the process has complete, you can restart the NGINX service:
systemctl start nginx
```
## Method 2: Using acme.sh (Cloudflare)
:::
::: tab "Method 2: acme.sh (Cloudflare)"
This is for advanced users, of which their server systems do not have access to port 80. The command below is for Ubuntu distributions and CloudFlare API (you may google for other APIs for other DNS providers), but you can always check [acme.sh's official site](https://github.com/Neilpang/acme.sh) for installation instructions.
``` bash
@ -102,3 +103,6 @@ After running the script for the first time, it will be added to the crontab aut
```bash
sudo crontab -e
```
:::
::::

View File

@ -1,13 +1,21 @@
# Upgrading Wings
Upgrading Wings is a painless process and should take less than a minute to complete.
## Wings Version Requirements
Each version of Pterodactyl Panel also has a corresponding minimum version of Wings that
is required for it to run. Please see the chart below for how these versions line up. In
most cases your base Wings version should match that of your Panel.
| Panel Version | Wings Version | Supported |
| ------------- | ------------- | --------- |
| 1.0.x | 1.0.x | |
| 1.1.x | 1.1.x | |
| 1.2.x | 1.2.x | |
| **1.3.x** | **1.3.x** | ✅ |
## Download Updated Binary
First, download the updated wings binary into `/usr/local/bin`.
::: warning
`Wings@1.2` requires `Panel@1.2` in order to run properly.
:::
``` bash
curl -L -o /usr/local/bin/wings https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64
chmod u+x /usr/local/bin/wings

149
yarn.lock
View File

@ -965,18 +965,18 @@
optionalDependencies:
prettier "^1.18.2"
"@vuepress/core@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/core/-/core-1.5.4.tgz#036d28d6cc8a0928913116de5ebe80b0b4a9ac1b"
integrity sha512-RaHJiX0Yno4S3zoV64JNd3xE55sza8rayyWvXAJY381XVMxKrsLBrgW6ntNYSkzGnZcxi6fwMV/CVOUhEtkEkA==
"@vuepress/core@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/core/-/core-1.8.2.tgz#4f5bafc894691bfea4146294a582a129483daf2a"
integrity sha512-lh9BLC06k9s0wxTuWtCkiNj49fkbW87enp0XSrFZHEoyDGSGndQjZmMMErcHc5Hx7nrW1nzc33sPH1NNtJl0hw==
dependencies:
"@babel/core" "^7.8.4"
"@vue/babel-preset-app" "^4.1.2"
"@vuepress/markdown" "1.5.4"
"@vuepress/markdown-loader" "1.5.4"
"@vuepress/plugin-last-updated" "1.5.4"
"@vuepress/plugin-register-components" "1.5.4"
"@vuepress/shared-utils" "1.5.4"
"@vuepress/markdown" "1.8.2"
"@vuepress/markdown-loader" "1.8.2"
"@vuepress/plugin-last-updated" "1.8.2"
"@vuepress/plugin-register-components" "1.8.2"
"@vuepress/shared-utils" "1.8.2"
autoprefixer "^9.5.1"
babel-loader "^8.0.4"
cache-loader "^3.0.0"
@ -998,7 +998,7 @@
url-loader "^1.0.1"
vue "^2.6.10"
vue-loader "^15.7.1"
vue-router "^3.1.3"
vue-router "^3.4.5"
vue-server-renderer "^2.6.10"
vue-template-compiler "^2.6.10"
vuepress-html-webpack-plugin "^3.2.0"
@ -1009,21 +1009,21 @@
webpack-merge "^4.1.2"
webpackbar "3.2.0"
"@vuepress/markdown-loader@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/markdown-loader/-/markdown-loader-1.5.4.tgz#9ba49bbe9c94ed792714589aef6a20c7ed0ac822"
integrity sha512-3R5quGIXQm7gfPWN67SVZ9OBA7VrGEEXJjjV01MYkbfhqVGgO6lBRq73Og0XdKs4RPx4nqJUPthhL8FJVNRTIg==
"@vuepress/markdown-loader@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/markdown-loader/-/markdown-loader-1.8.2.tgz#b2a58291a967f2bbe0af6e58f9542f5911879233"
integrity sha512-mWzFXikCUcAN/chpKkqZpRYKdo0312hMv8cBea2hvrJYV6y4ODB066XKvXN8JwOcxuCjxWYJkhWGr+pXq1oTtw==
dependencies:
"@vuepress/markdown" "1.5.4"
"@vuepress/markdown" "1.8.2"
loader-utils "^1.1.0"
lru-cache "^5.1.1"
"@vuepress/markdown@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/markdown/-/markdown-1.5.4.tgz#d9736db430034b7b6058696c4da1cc211032bbea"
integrity sha512-bgrR9LTcAa2O0WipTbH3OFKeAfXc/2oU6cUIoMkyihSKUo1Mr5yt1XKM7vHe1uFEZygNr8EAemep8chsuVuISA==
"@vuepress/markdown@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/markdown/-/markdown-1.8.2.tgz#50ea5a1962591a436b26d1aa2b111df37eb9ea8a"
integrity sha512-zznBHVqW+iBkznF/BO/GY9RFu53khyl0Ey0PnGqvwCJpRLNan6y5EXgYumtjw2GSYn5nDTTALYxtyNBdz64PKg==
dependencies:
"@vuepress/shared-utils" "1.5.4"
"@vuepress/shared-utils" "1.8.2"
markdown-it "^8.4.1"
markdown-it-anchor "^5.0.2"
markdown-it-chain "^1.3.0"
@ -1031,10 +1031,10 @@
markdown-it-table-of-contents "^0.4.0"
prismjs "^1.13.0"
"@vuepress/plugin-active-header-links@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-active-header-links/-/plugin-active-header-links-1.5.4.tgz#ffbfbce0d5932091043b766757683ca3b5420aef"
integrity sha512-FI1Dr/44HVqxLMRSuaVEEwegGVEGFlaWYE3nsXwL7klKr6c+2kXHEw9rSQlAxzJyzVfovTk4dd+s/AMOKuLGZQ==
"@vuepress/plugin-active-header-links@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-active-header-links/-/plugin-active-header-links-1.8.2.tgz#0cb9b29c826dd97d35357a9b09c962ef782cb793"
integrity sha512-JmXAQg8D7J8mcKe2Ue3BZ9dOCzJMJXP4Cnkkc/IrqfDg0ET0l96gYWZohCqlvRIWt4f0VPiFAO4FLYrW+hko+g==
dependencies:
lodash.debounce "^4.0.8"
@ -1043,36 +1043,36 @@
resolved "https://registry.yarnpkg.com/@vuepress/plugin-google-analytics/-/plugin-google-analytics-1.4.0.tgz#0243da6ff80e47b1d41d0227cb8bcb040ebba90f"
integrity sha512-Q3jTyNovy81vlqfCQ5MewYU2K/brn0DfhAlJJnelXdbYH7XRe1IA3hZCcQQO73rzIMA/HxIsMBWevs8jTQF3QA==
"@vuepress/plugin-last-updated@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-last-updated/-/plugin-last-updated-1.5.4.tgz#6f3f9fe720ce7f883c37ddc71ac02fe8f36bbfe4"
integrity sha512-9kezBCxPM+cevKRNML6Q7v6qkI8NQvKbVkwohlzsElM8FBmjlZmgFyZje66ksTnb/U6ogazCCq9jdOyipNcQ2A==
"@vuepress/plugin-last-updated@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-last-updated/-/plugin-last-updated-1.8.2.tgz#7ce689f8d5050cf0213949bc2e5aa879c09ff4b1"
integrity sha512-pYIRZi52huO9b6HY3JQNPKNERCLzMHejjBRt9ekdnJ1xhLs4MmRvt37BoXjI/qzvXkYtr7nmGgnKThNBVRTZuA==
dependencies:
cross-spawn "^6.0.5"
"@vuepress/plugin-nprogress@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-nprogress/-/plugin-nprogress-1.5.4.tgz#b818ebcac5addb6488bf50eb21585450f52ae40c"
integrity sha512-2bGKoO/o2e5mIfOU80q+AkxOK5wVijA/+8jGjSQVf2ccMpJw+Ly1mMi69r81Q0QkEihgfI9VN42a5+a6LUgPBw==
"@vuepress/plugin-nprogress@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-nprogress/-/plugin-nprogress-1.8.2.tgz#dc6c082925420c8c59ecb7fc2d4a9401f6d4664a"
integrity sha512-3TOBee2NM3WLr1tdjDTGfrAMggjN+OlEPyKyv8FqThsVkDYhw48O3HwqlThp9KX7UbL3ExxIFBwWRFLC+kYrdw==
dependencies:
nprogress "^0.2.0"
"@vuepress/plugin-register-components@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-register-components/-/plugin-register-components-1.5.4.tgz#2f62d0790471ef53935ff2c808d8045c0473067f"
integrity sha512-Y1U9j6unZp1ZhnHjQ9yOPY+vxldUA3C1EwT6UgI75j5gxa5Hz6NakoIo6mbhaYHlGmx33o/MXrxufLPapo/YlQ==
"@vuepress/plugin-register-components@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-register-components/-/plugin-register-components-1.8.2.tgz#2fb45a68b0a1efb8822670d95c3b231a2d0eb74d"
integrity sha512-6SUq3nHFMEh9qKFnjA8QnrNxj0kLs7+Gspq1OBU8vtu0NQmSvLFZVaMV7pzT/9zN2nO5Pld5qhsUJv1g71MrEA==
dependencies:
"@vuepress/shared-utils" "1.5.4"
"@vuepress/shared-utils" "1.8.2"
"@vuepress/plugin-search@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-search/-/plugin-search-1.5.4.tgz#3360445e9ecf8bdcb5497ab1c0f46d8aecc9ab6c"
integrity sha512-wikU9XYiZ3Olbii0lI+56mcSdpzHHkduVBMB4MNEV5iob23qDxGPmvfZirjsZV20w1UnLRptERyHtZkTLW9Mbg==
"@vuepress/plugin-search@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/plugin-search/-/plugin-search-1.8.2.tgz#74b92f663acf6b4560e15dc0442a84c4e874e206"
integrity sha512-JrSJr9o0Kar14lVtZ4wfw39pplxvvMh8vDBD9oW09a+6Zi/4bySPGdcdaqdqGW+OHSiZNvG+6uyfKSBBBqF6PA==
"@vuepress/shared-utils@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/shared-utils/-/shared-utils-1.5.4.tgz#d2c8693b8cd354d3a13a76f8f4259335e5540099"
integrity sha512-HCeMPEAPjFN1Ongii0BUCI1iB4gBBiQ4PUgh7F4IGG8yBg4tMqWO4NHqCuDCuGEvK7lgHy8veto0SsSvdSKp3g==
"@vuepress/shared-utils@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/shared-utils/-/shared-utils-1.8.2.tgz#5ec1601f2196aca34ad82eed7c9be2d7948f705b"
integrity sha512-6kGubc7iBDWruEBUU7yR+sQ++SOhMuvKWvWeTZJKRZedthycdzYz7QVpua0FaZSAJm5/dIt8ymU4WQvxTtZgTQ==
dependencies:
chalk "^2.3.2"
escape-html "^1.0.3"
@ -1084,17 +1084,17 @@
toml "^3.0.0"
upath "^1.1.0"
"@vuepress/theme-default@1.5.4":
version "1.5.4"
resolved "https://registry.yarnpkg.com/@vuepress/theme-default/-/theme-default-1.5.4.tgz#77db27fe7c3ced15a970644df0202b0effbe865f"
integrity sha512-kHst1yXzqTiocVU7w9x4cfJ08vR9ZbREC6kTRtH1ytQSEUL5tM0b9HFicfg1kDp7YNq2qntRro+WmfjU9Ps/eg==
"@vuepress/theme-default@1.8.2":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@vuepress/theme-default/-/theme-default-1.8.2.tgz#7f474036c752c1f9801b83f68f5c70c092b182b4"
integrity sha512-rE7M1rs3n2xp4a/GrweO8EGwqFn3EA5gnFWdVmVIHyr7C1nix+EqjpPQF1SVWNnIrDdQuCw38PqS+oND1K2vYw==
dependencies:
"@vuepress/plugin-active-header-links" "1.5.4"
"@vuepress/plugin-nprogress" "1.5.4"
"@vuepress/plugin-search" "1.5.4"
"@vuepress/plugin-active-header-links" "1.8.2"
"@vuepress/plugin-nprogress" "1.8.2"
"@vuepress/plugin-search" "1.8.2"
docsearch.js "^2.5.2"
lodash "^4.17.15"
stylus "^0.54.5"
stylus "^0.54.8"
stylus-loader "^3.0.2"
vuepress-plugin-container "^2.0.2"
vuepress-plugin-smooth-scroll "^0.0.3"
@ -3536,7 +3536,7 @@ glob-to-regexp@^0.3.0:
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab"
integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=
glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4:
glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
version "7.1.6"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
@ -4994,13 +4994,18 @@ mkdirp@0.3.0:
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e"
integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=
mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1, mkdirp@~0.5.x:
mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1:
version "0.5.5"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
dependencies:
minimist "^1.2.5"
mkdirp@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
move-concurrently@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
@ -7418,18 +7423,18 @@ stylus-loader@^3.0.2:
lodash.clonedeep "^4.5.0"
when "~3.6.x"
stylus@^0.54.5:
version "0.54.7"
resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.7.tgz#c6ce4793965ee538bcebe50f31537bfc04d88cd2"
integrity sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==
stylus@^0.54.8:
version "0.54.8"
resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.8.tgz#3da3e65966bc567a7b044bfe0eece653e099d147"
integrity sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==
dependencies:
css-parse "~2.0.0"
debug "~3.1.0"
glob "^7.1.3"
mkdirp "~0.5.x"
glob "^7.1.6"
mkdirp "~1.0.4"
safer-buffer "^2.1.2"
sax "~1.2.4"
semver "^6.0.0"
semver "^6.3.0"
source-map "^0.7.3"
supports-color@^2.0.0:
@ -7980,10 +7985,10 @@ vue-loader@^15.7.1:
vue-hot-reload-api "^2.3.0"
vue-style-loader "^4.1.0"
vue-router@^3.1.3:
version "3.1.6"
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.1.6.tgz#45f5a3a3843e31702c061dd829393554e4328f89"
integrity sha512-GYhn2ynaZlysZMkFE5oCHRUTqE8BWs/a9YbKpNLi0i7xD6KG1EzDqpHQmv1F5gXjr8kL5iIVS8EOtRaVUEXTqA==
vue-router@^3.4.5:
version "3.5.1"
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.5.1.tgz#edf3cf4907952d1e0583e079237220c5ff6eb6c9"
integrity sha512-RRQNLT8Mzr8z7eL4p7BtKvRaTSGdCbTy2+Mm5HTJvLGYSSeG9gDzNasJPP/yOYKLy+/cLG/ftrqq5fvkFwBJEw==
vue-server-renderer@^2.6.10:
version "2.6.11"
@ -8062,13 +8067,13 @@ vuepress-plugin-tabs@^0.3.0:
resolved "https://registry.yarnpkg.com/vuepress-plugin-tabs/-/vuepress-plugin-tabs-0.3.0.tgz#e95fb98d3736af450a9baaf1a09b8677983ca8d8"
integrity sha512-jooDlcMdBqhXgIaF1awFSaOTM56mleP6bbCiGxyQxTZexfvCfDvZhNLGpyXqMQA50ZmNGmvLrK82YYb63k1jfA==
vuepress@^1.5.4:
version "1.5.4"
resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-1.5.4.tgz#282d2412c1c7269d8bd93b83d421ef53b77b45f6"
integrity sha512-F25r65BzxDFAJmWIN9s9sQSndLIf1ldAKEwkeXCqE4p2lsx/eVvQJL3DzOeeR2WgCFOkhFMKWIV+CthTGdNTZg==
vuepress@^1.8.2:
version "1.8.2"
resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-1.8.2.tgz#97e8bf979630611fc7b621fc4cc35b798ee5e847"
integrity sha512-BU1lUDwsA3ghf7a9ga4dsf0iTc++Z/l7BR1kUagHWVBHw7HNRgRDfAZBDDQXhllMILVToIxaTifpne9mSi94OA==
dependencies:
"@vuepress/core" "1.5.4"
"@vuepress/theme-default" "1.5.4"
"@vuepress/core" "1.8.2"
"@vuepress/theme-default" "1.8.2"
cac "^6.5.6"
envinfo "^7.2.0"
opencollective-postinstall "^2.0.2"