This is an automated email from the ASF dual-hosted git repository.

mjumper pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/guacamole-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 5aa87ef  Deploy draft release notes for 1.4.0-RC1.
5aa87ef is described below

commit 5aa87efdce657922b7d61738046f6674a19176eb
Author: Michael Jumper <[email protected]>
AuthorDate: Wed Dec 29 19:04:14 2021 -0800

    Deploy draft release notes for 1.4.0-RC1.
---
 content/api-documentation/index.html          |    2 +-
 content/faq/index.html                        |    2 +-
 content/guac-style/index.html                 |    2 +-
 content/index.html                            |    2 +-
 content/maturity-evaluation/index.html        |    2 +-
 content/open-source/index.html                |    2 +-
 content/pull-requests/index.html              |    2 +-
 content/release-procedures-part1/index.html   |    2 +-
 content/release-procedures-part2/index.html   |    2 +-
 content/release-procedures-part3/index.html   |    2 +-
 content/release-procedures-part4/index.html   |    2 +-
 content/releases/0.8.3/index.html             |    2 +-
 content/releases/0.8.4/index.html             |    2 +-
 content/releases/0.9.0/index.html             |    2 +-
 content/releases/0.9.1/index.html             |    2 +-
 content/releases/0.9.10-incubating/index.html |    2 +-
 content/releases/0.9.11-incubating/index.html |    2 +-
 content/releases/0.9.12-incubating/index.html |    2 +-
 content/releases/0.9.13-incubating/index.html |    2 +-
 content/releases/0.9.14/index.html            |    2 +-
 content/releases/0.9.2/index.html             |    2 +-
 content/releases/0.9.3/index.html             |    2 +-
 content/releases/0.9.4/index.html             |    2 +-
 content/releases/0.9.5/index.html             |    2 +-
 content/releases/0.9.6/index.html             |    2 +-
 content/releases/0.9.7/index.html             |    2 +-
 content/releases/0.9.8/index.html             |    2 +-
 content/releases/0.9.9/index.html             |    2 +-
 content/releases/1.0.0/index.html             |    2 +-
 content/releases/1.1.0/index.html             |    2 +-
 content/releases/1.2.0/index.html             |    2 +-
 content/releases/1.3.0/index.html             |    2 +-
 content/releases/1.4.0/index.html             | 1109 +++++++++++++++++++++++++
 content/releases/index.html                   |    2 +-
 content/security/index.html                   |    2 +-
 content/styles/main.css                       |   21 +-
 content/support/index.html                    |    2 +-
 37 files changed, 1161 insertions(+), 39 deletions(-)

diff --git a/content/api-documentation/index.html 
b/content/api-documentation/index.html
index 87714d3..dcb33b6 100644
--- a/content/api-documentation/index.html
+++ b/content/api-documentation/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/faq/index.html b/content/faq/index.html
index 1701769..eb8b723 100644
--- a/content/faq/index.html
+++ b/content/faq/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/guac-style/index.html b/content/guac-style/index.html
index fdf5de7..2535230 100644
--- a/content/guac-style/index.html
+++ b/content/guac-style/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/index.html b/content/index.html
index 5d1135d..9f73259 100644
--- a/content/index.html
+++ b/content/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/maturity-evaluation/index.html 
b/content/maturity-evaluation/index.html
index ac73047..cf6b62d 100644
--- a/content/maturity-evaluation/index.html
+++ b/content/maturity-evaluation/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/open-source/index.html b/content/open-source/index.html
index 449bffc..3b04a09 100644
--- a/content/open-source/index.html
+++ b/content/open-source/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/pull-requests/index.html b/content/pull-requests/index.html
index f128b4e..1bb1c08 100644
--- a/content/pull-requests/index.html
+++ b/content/pull-requests/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/release-procedures-part1/index.html 
b/content/release-procedures-part1/index.html
index 4d5a0de..213cead 100644
--- a/content/release-procedures-part1/index.html
+++ b/content/release-procedures-part1/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/release-procedures-part2/index.html 
b/content/release-procedures-part2/index.html
index 31e4ea1..e87d9de 100644
--- a/content/release-procedures-part2/index.html
+++ b/content/release-procedures-part2/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/release-procedures-part3/index.html 
b/content/release-procedures-part3/index.html
index 2015926..7785aec 100644
--- a/content/release-procedures-part3/index.html
+++ b/content/release-procedures-part3/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/release-procedures-part4/index.html 
b/content/release-procedures-part4/index.html
index 8ff2f58..63b0ca7 100644
--- a/content/release-procedures-part4/index.html
+++ b/content/release-procedures-part4/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.8.3/index.html 
b/content/releases/0.8.3/index.html
index e920d3d..3cad845 100644
--- a/content/releases/0.8.3/index.html
+++ b/content/releases/0.8.3/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.8.4/index.html 
b/content/releases/0.8.4/index.html
index 6dfe978..6063923 100644
--- a/content/releases/0.8.4/index.html
+++ b/content/releases/0.8.4/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.0/index.html 
b/content/releases/0.9.0/index.html
index de68bd2..c31caa5 100644
--- a/content/releases/0.9.0/index.html
+++ b/content/releases/0.9.0/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.1/index.html 
b/content/releases/0.9.1/index.html
index 36ac43e..de4c829 100644
--- a/content/releases/0.9.1/index.html
+++ b/content/releases/0.9.1/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.10-incubating/index.html 
b/content/releases/0.9.10-incubating/index.html
index cedad78..1d26486 100644
--- a/content/releases/0.9.10-incubating/index.html
+++ b/content/releases/0.9.10-incubating/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.11-incubating/index.html 
b/content/releases/0.9.11-incubating/index.html
index 4c47227..ab73796 100644
--- a/content/releases/0.9.11-incubating/index.html
+++ b/content/releases/0.9.11-incubating/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.12-incubating/index.html 
b/content/releases/0.9.12-incubating/index.html
index 3ec79df..fbabd35 100644
--- a/content/releases/0.9.12-incubating/index.html
+++ b/content/releases/0.9.12-incubating/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.13-incubating/index.html 
b/content/releases/0.9.13-incubating/index.html
index 659281d..cb8c5cd 100644
--- a/content/releases/0.9.13-incubating/index.html
+++ b/content/releases/0.9.13-incubating/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.14/index.html 
b/content/releases/0.9.14/index.html
index e56f596..3ea65ab 100644
--- a/content/releases/0.9.14/index.html
+++ b/content/releases/0.9.14/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.2/index.html 
b/content/releases/0.9.2/index.html
index 7a86482..d72099c 100644
--- a/content/releases/0.9.2/index.html
+++ b/content/releases/0.9.2/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.3/index.html 
b/content/releases/0.9.3/index.html
index ab4b489..1d3c77e 100644
--- a/content/releases/0.9.3/index.html
+++ b/content/releases/0.9.3/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.4/index.html 
b/content/releases/0.9.4/index.html
index 364f322..3c9e3a0 100644
--- a/content/releases/0.9.4/index.html
+++ b/content/releases/0.9.4/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.5/index.html 
b/content/releases/0.9.5/index.html
index a018e02..50b2a2c 100644
--- a/content/releases/0.9.5/index.html
+++ b/content/releases/0.9.5/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.6/index.html 
b/content/releases/0.9.6/index.html
index 8db6890..7d1dd4e 100644
--- a/content/releases/0.9.6/index.html
+++ b/content/releases/0.9.6/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.7/index.html 
b/content/releases/0.9.7/index.html
index 1fc7f41..702ae63 100644
--- a/content/releases/0.9.7/index.html
+++ b/content/releases/0.9.7/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.8/index.html 
b/content/releases/0.9.8/index.html
index 5dcbe4c..e3a8c02 100644
--- a/content/releases/0.9.8/index.html
+++ b/content/releases/0.9.8/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/0.9.9/index.html 
b/content/releases/0.9.9/index.html
index ee8dd51..434779f 100644
--- a/content/releases/0.9.9/index.html
+++ b/content/releases/0.9.9/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/1.0.0/index.html 
b/content/releases/1.0.0/index.html
index c3a6005..ec8df30 100644
--- a/content/releases/1.0.0/index.html
+++ b/content/releases/1.0.0/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/1.1.0/index.html 
b/content/releases/1.1.0/index.html
index f96bde4..fd04391 100644
--- a/content/releases/1.1.0/index.html
+++ b/content/releases/1.1.0/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/1.2.0/index.html 
b/content/releases/1.2.0/index.html
index 00c3e24..d6791e9 100644
--- a/content/releases/1.2.0/index.html
+++ b/content/releases/1.2.0/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/1.3.0/index.html 
b/content/releases/1.3.0/index.html
index 56c43e2..03709f4 100644
--- a/content/releases/1.3.0/index.html
+++ b/content/releases/1.3.0/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/releases/1.4.0/index.html 
b/content/releases/1.4.0/index.html
new file mode 100644
index 0000000..1ccca75
--- /dev/null
+++ b/content/releases/1.4.0/index.html
@@ -0,0 +1,1109 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml";>
+
+    <head>
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
+    <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
+    <meta charset="UTF-8"/>
+    <title>Apache Guacamole™: 1.4.0</title>
+</head>
+
+
+    <body>
+
+        <!-- Header -->
+<div id="header">
+    <h1><a href="/">Apache Guacamole™</a></h1>
+    <ul id="navigation" class="menu">
+        
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/releases/"
+                        
+                            class="download"
+                            >Downloads</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li class="dropdown">
+                    
+                    <a class="dropdown-toggle "
+                       href="#">Docs</a>
+                    <ul class="dropdown-menu">
+                        
+
+    
+    
+        
+            
+                <li>
+                    <a href="/faq/"
+                        >FAQ</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/api-documentation/"
+                        >API / Development</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/doc/gug/"
+                        >Guacamole Manual</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+
+                    </ul>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li class="dropdown">
+                    
+                    <a class="dropdown-toggle "
+                       href="#">Community</a>
+                    <ul class="dropdown-menu">
+                        
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a 
href="https://github.com/search?utf8=%E2%9C%93&q=repo%3Aapache%2Fguacamole-server+repo%3Aapache%2Fguacamole-client+repo%3Aapache%2Fguacamole-website&type=Repositories&ref=searchresults";
+                        >GitHub</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/open-source/"
+                        >Contributing</a>
+                </li>
+            
+        
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/support/"
+                        >Help / Support</a>
+                </li>
+            
+        
+    
+
+
+                    </ul>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="https://issues.apache.org/jira/browse/GUACAMOLE/";
+                        >JIRA</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="/security/"
+                        >Security Reports</a>
+                </li>
+            
+        
+    
+
+    
+    
+        
+            
+                <li class="dropdown">
+                    
+                    <a class="dropdown-toggle apache"
+                       href="#">Apache Software Foundation</a>
+                    <ul class="dropdown-menu">
+                        
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="http://www.apache.org/";
+                        >ASF Homepage</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="http://www.apache.org/licenses/";
+                        >License</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="http://www.apache.org/foundation/thanks.html";
+                        >Thanks</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a href="http://www.apache.org/foundation/sponsorship.html";
+                        >Sponsorship</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+        
+            
+                <li>
+                    <a 
href="http://www.apache.org/foundation/policies/conduct.html";
+                        >Code of Conduct</a>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+
+                    </ul>
+                </li>
+            
+        
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+    
+    
+
+
+    </ul>
+</div>
+
+
+        <!-- Content -->
+        <div id="page">
+            <div id="content">
+                
+    <div class="draft-disclaimer">
+        <p><strong>Apache Guacamole 1.4.0 has not yet been
+        released!</strong> The artifacts and release notes below are drafts for
+        a proposed release of Apache Guacamole which has not yet occurred.</p>
+    </div>
+
+
+
+
+<h1>Apache Guacamole 1.4.0</h1>
+
+<div id="links">
+
+    
+    
+        <h2>Release documentation</h2>
+    
+    <ul>
+        
+            <li><a href="/doc/1.4.0/gug">Manual</a></li>
+        
+            <li><a href="/doc/1.4.0/guacamole-common">guacamole-common</a></li>
+        
+            <li><a 
href="/doc/1.4.0/guacamole-common-js">guacamole-common-js</a></li>
+        
+            <li><a href="/doc/1.4.0/guacamole-ext">guacamole-ext</a></li>
+        
+            <li><a href="/doc/1.4.0/libguac">libguac</a></li>
+        
+    </ul>
+
+
+
+</div>
+
+<p>Apache Guacamole is split into two subprojects: "guacamole-client", the
+HTML5 web application which serves the Guacamole client to users, and
+"guacamole-server", the remote desktop proxy which the web application
+communicates with. The source code for each of these may be downloaded
+below.</p>
+
+<p>You <strong>must</strong> <a 
href="https://www.apache.org/info/verification.html";>
+verify the integrity of any downloaded files</a> using the OpenPGP signatures
+we provide with each release. The signatures should be verified against the
+<a href="https://downloads.apache.org/guacamole/KEYS";>KEYS</a>
+file, which contains the OpenPGP keys of Apache Guacamole's Release Managers.
+Checksums of each released file are also provided.</p>
+
+<!-- Source archives -->
+<div class="release-downloads">
+    
+    <table>
+        
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-client-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-client-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-client-1.4.0.tar.gz'
+                       )">guacamole-client-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-client-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-client-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-server-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-server-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-server-1.4.0.tar.gz'
+                       )">guacamole-server-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-server-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/source/guacamole-server-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+    </table>
+
+
+</div>
+
+<p>If you do not wish to build Apache Guacamole entirely from source, pre-built
+versions of the web application (.war) and all extensions are provided here in
+binary form for convenience.  <strong>Please note that guacamole-server must
+still be built and installed from source.</strong></p>
+
+<!-- All binaries -->
+<div class="release-downloads">
+    
+    <table>
+        
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-1.4.0.war";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-1.4.0.war'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-1.4.0.war'
+                       )">guacamole-1.4.0.war</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-1.4.0.war.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-1.4.0.war.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-duo-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-duo-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-duo-1.4.0.tar.gz'
+                       )">guacamole-auth-duo-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-duo-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-duo-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-header-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-header-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-header-1.4.0.tar.gz'
+                       )">guacamole-auth-header-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-header-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-header-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-jdbc-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-jdbc-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-jdbc-1.4.0.tar.gz'
+                       )">guacamole-auth-jdbc-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-jdbc-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-jdbc-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-json-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-json-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-json-1.4.0.tar.gz'
+                       )">guacamole-auth-json-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-json-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-json-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-ldap-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-ldap-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-ldap-1.4.0.tar.gz'
+                       )">guacamole-auth-ldap-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-ldap-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-ldap-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-quickconnect-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-quickconnect-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-quickconnect-1.4.0.tar.gz'
+                       )">guacamole-auth-quickconnect-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-quickconnect-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-quickconnect-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-sso-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-sso-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-sso-1.4.0.tar.gz'
+                       )">guacamole-auth-sso-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-sso-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-sso-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+            <tr>
+                
+                
+                <td><a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-totp-1.4.0.tar.gz";
+                       onclick="trackDownload(
+                           'click',
+                           'guacamole-auth-totp-1.4.0.tar.gz'
+                       )"
+                       oncontextmenu="trackDownload(
+                           'menu',
+                           'guacamole-auth-totp-1.4.0.tar.gz'
+                       )">guacamole-auth-totp-1.4.0.tar.gz</a></td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-totp-1.4.0.tar.gz.asc";>PGP</a>
 ]</td>
+                
+                    
+                    <td>[ <a 
href="https://dist.apache.org/repos/dist/dev/guacamole/1.4.0-RC1/binary/guacamole-auth-totp-1.4.0.tar.gz.sha256";>SHA-256</a>
 ]</td>
+                
+            </tr>
+        
+    </table>
+
+
+</div>
+
+<!-- Release notes -->
+<div id="release-notes">
+    <h1>Release notes</h1>
+    <p>The 1.4.0 release features support for connection tiling, broadcasting 
keyboard
+events across multiple connections, and authentication with encrypted and
+signed JSON. Established support for single sign-on has been improved,
+multi-touch support for RDP has been added, and problems with audio input
+support for RDP have been corrected. For a full list of all changes in this
+release, please see the <a href="#changelog">changelog</a>.</p>
+
+<p><strong>The 1.4.0 release is compatible with older 1.x components.</strong> 
You should
+upgrade older components to 1.4.0 when possible, however things should continue
+to work correctly in the interim:</p>
+
+<ul>
+  <li>Extensions written for older 1.x releases can be used by 1.4.0.</li>
+  <li>Components written for the version of the Guacamole protocol used by 
older
+1.x releases can be used with components of the 1.4.0 release.</li>
+</ul>
+
+<p>Regardless of inter-component compatibility, <strong>there are changes in 
1.4.0 which
+may affect downstream users of Guacamole’s APIs</strong>. Please see the <a 
href="#deprecation--compatibility-notes">deprecation
+/ compatibility notes</a> section for more
+information.</p>
+
+<h2 id="connection-tiling-and-keyboard-broadcasting">Connection tiling and 
keyboard broadcasting</h2>
+
+<p><a 
href="/doc/1.4.0/gug/using-guacamole.html#switching-and-tiling-connections">Multiple
 connections can now be displayed simultaneously within the same
+browser tab</a>,
+automatically arranged in an even, tiled layout:</p>
+
+<p><img src="/doc/1.4.0/gug/_images/client-tiled.png" alt="Multiple client 
displays in a tiled arrangement" /></p>
+
+<p>The currently-focused connection is indicated by a blue border, and the user
+can choose to focus any number of these tiled connections at the same time.
+<strong>If multiple connections are focused, keyboard interaction is broadcast 
across
+each of those connections.</strong></p>
+
+<h2 id="major-fixes-to-rdp-audio-input-support">Major fixes to RDP audio input 
support</h2>
+
+<p>Depending on the application in use within the remote desktop, Guacamole’s
+audio input support for RDP suffered from quality issues related to variability
+in audio buffer behavior and size. If the audio backend used by the application
+could not adjust for occasional bursts of audio packets, any audio packets
+received by the remote desktop that exceeded the remaining buffer space would
+be dropped, resulting in audible clicks/pops and faster-than-expected 
playback.</p>
+
+<p>This has now been corrected. Guacamole will automatically throttle the 
amount
+of data it sends to the remote desktop to avoid running out of remote buffer
+space, ensuring the audio received by applications within the remote desktop is
+identical to the audio received by Guacamole via the browser.</p>
+
+<h2 id="rdp-support-for-passing-through-multi-touch-events">RDP support for 
passing through multi-touch events</h2>
+
+<p>In addition to Guacamole’s established support for emulating a mouse on 
touch
+devices, multi-touch events may now be passed through to the remote desktop
+server when supported and enabled.</p>
+
+<p>RDP supports multi-touch through its “RDPEI” channel. <a 
href="/doc/1.4.0/gug/configuring-guacamole.html#device-redirection">If touch is 
enabled on a
+Guacamole RDP connection</a>,
+touch interaction with the Guacamole display will directly affect touch-enabled
+applications within the remote desktop session rather than being turned into
+mouse events.</p>
+
+<h2 id="support-for-secondary-sso-providers">Support for secondary SSO 
providers</h2>
+
+<p>Guacamole’s support for single sign-on has historically been all-or-nothing,
+with either <em>all</em> users using SSO to authenticate or none at all. This 
is no
+longer the case: Guacamole may now be configured to allow normal
+username/password authentication in addition to SSO, and multiple SSO providers
+may be used at the same time.</p>
+
+<p>Whether an SSO authentication extension automatically takes effect for all
+users depends on whether that extension has priority, which can now be defined
+using <a 
href="/doc/1.4.0/gug/configuring-guacamole.html#guacamole-properties">the <code 
class="language-plaintext highlighter-rouge">extension-priority</code> 
property</a>.
+For example, to automatically require SAML for all users, you would give the
+SAML extension priority above all others:</p>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>extension-priority: saml
+</code></pre></div></div>
+
+<p>Or, to allow username/password authentication and simply provide the option 
for
+users to use SAML, you would ensure that other extensions have priority:</p>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>extension-priority: *, saml
+</code></pre></div></div>
+
+<p>More information on <a 
href="/doc/1.4.0/gug/configuring-guacamole.html#guacamole-properties">using the 
<code class="language-plaintext highlighter-rouge">extension-priority</code> 
property</a>
+and controlling the behavior of the supported SSO extensions can be found in
+the Guacamole manual:</p>
+
+<ul>
+  <li><a href="/doc/1.4.0/gug/cas-auth.html">CAS Authentication</a></li>
+  <li><a href="/doc/1.4.0/gug/openid-auth.html">OpenID Connect 
Authentication</a></li>
+  <li><a href="/doc/1.4.0/gug/saml-auth.html">SAML Authentication</a></li>
+</ul>
+
+<h2 id="support-for-authentication-with-encrypted-signed-json">Support for 
authentication with encrypted, signed JSON</h2>
+
+<p>The “guacamole-auth-json” authentication extension, <a 
href="https://github.com/glyptodon/guacamole-auth-json";>formerly a third-party
+project maintained by Glyptodon</a>,
+has now been brought into Apache Guacamole as one of the project’s own
+extensions.</p>
+
+<p>guacamole-auth-json allows external software to automatically authenticate 
and
+authorize users with an encrypted and signed JSON document. As long as the
+received JSON has not expired and was encrypted and signed with the correct
+key, it is accepted as sufficient verification that the user is authorized to
+access the resources described by that JSON.</p>
+
+<p>For more information, see the <a 
href="/doc/1.4.0/gug/json-auth.html">documentation covering guacamole-auth-json 
in
+the Guacamole manual</a>.</p>
+
+<h1 id="changelog">Changelog</h1>
+
+<h3 id="user-interface--platform">User interface / platform</h3>
+
+<ul>
+  <li>Control caching of extension JS/CSS (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-275";>GUACAMOLE-275</a>)</li>
+  <li>Provide option for broadcasting input events across multiple connections 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-724";>GUACAMOLE-724</a>)</li>
+  <li>Migrate away from including auth token within REST API URLs (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-956";>GUACAMOLE-956</a>)</li>
+  <li class="bug">Users/groups with identifiers containing slashes cannot be 
modified (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1261";>GUACAMOLE-1261</a>)</li>
+  <li>Automatically enforce request size limits independently of reverse proxy 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1298";>GUACAMOLE-1298</a>)</li>
+  <li class="bug">Unexpected errors during session expiration may block 
further expirations (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1299";>GUACAMOLE-1299</a>)</li>
+  <li class="bug">Connection-specific history sorted in wrong order (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1366";>GUACAMOLE-1366</a>)</li>
+  <li class="bug">Login appears to succeed if the webapp is entirely down (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1384";>GUACAMOLE-1384</a>)</li>
+</ul>
+
+<h3 id="docker-images">Docker images</h3>
+
+<ul>
+  <li>Run Tomcat as reduced-privilege user (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-890";>GUACAMOLE-890</a>)</li>
+  <li>Add account auto-create options to Docker (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1128";>GUACAMOLE-1128</a>)</li>
+  <li>Add <code class="language-plaintext 
highlighter-rouge">OPENID_MAX_TOKEN_VALIDITY</code> environment variable (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1284";>GUACAMOLE-1284</a>)</li>
+  <li class="bug">Correct non-fatal error in handling of OpenID configuration 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1316";>GUACAMOLE-1316</a>)</li>
+</ul>
+
+<h3 id="authentication-integration-and-storage">Authentication, integration, 
and storage</h3>
+
+<ul>
+  <li>Ensure logout works as expected when using SSO (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-680";>GUACAMOLE-680</a>)</li>
+  <li>Allow for clearing TOTP Data in admin interface (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-770";>GUACAMOLE-770</a>)</li>
+  <li class="bug">Non-DN usernames can no longer be used for search bind DN 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-944";>GUACAMOLE-944</a>)</li>
+  <li>Provide configuration for filtering LDAP groups (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-996";>GUACAMOLE-996</a>)</li>
+  <li>Allow QuickConnect extension to block certain parameters (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1025";>GUACAMOLE-1025</a>)</li>
+  <li>Ignore non-relevant attributes for objects returned by LDAP queries (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1130";>GUACAMOLE-1130</a>)</li>
+  <li class="bug">User profile information cleared after TOTP enrollment (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1199";>GUACAMOLE-1199</a>)</li>
+  <li>Move guacamole-auth-json into the main project (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1218";>GUACAMOLE-1218</a>)</li>
+  <li>Allow NAS IP address to be configured (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1252";>GUACAMOLE-1252</a>)</li>
+  <li>Allow login with standard username/password when SSO is enabled (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1364";>GUACAMOLE-1364</a>)</li>
+  <li>Add <code class="language-plaintext 
highlighter-rouge">user-mapping.xml</code> support for simple hashing with 
SHA-256 (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1391";>GUACAMOLE-1391</a>)</li>
+  <li>Automatically focus TOTP field (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1397";>GUACAMOLE-1397</a>)</li>
+  <li>Automatically detect MariaDB / MySQL driver (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1407";>GUACAMOLE-1407</a>)</li>
+</ul>
+
+<h3 id="protocol-support--guacd">Protocol support / guacd</h3>
+
+<ul>
+  <li class="bug">RDP clipboard uses incorrect newline characters (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-478";>GUACAMOLE-478</a>)</li>
+  <li>Notify connecting client on unrecognized connection ID (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1047";>GUACAMOLE-1047</a>)</li>
+  <li>Support server control instructions during handshake (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1048";>GUACAMOLE-1048</a>)</li>
+  <li class="bug">VNC fails to connect to macOS (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1133";>GUACAMOLE-1133</a>)</li>
+  <li>Add support for connecting to Kubernetes pods using exec (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1174";>GUACAMOLE-1174</a>)</li>
+  <li class="bug">guacd cannot bind to IPv6 addresses (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1190";>GUACAMOLE-1190</a>)</li>
+  <li>Disable caches that FreeRDP no longer considers supported (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1191";>GUACAMOLE-1191</a>)</li>
+  <li class="bug">RDP audio input samples are dropped (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1201";>GUACAMOLE-1201</a>)</li>
+  <li>Add support for RDP touch events (RDPEI) (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1204";>GUACAMOLE-1204</a>)</li>
+  <li class="bug">Backslash not properly escaped in server-generated JSON (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1215";>GUACAMOLE-1215</a>)</li>
+  <li>Add configuration option to specify WOL port (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1245";>GUACAMOLE-1245</a>)</li>
+  <li>Support libuuid (util-linux) in addition to OSSP UUID (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1254";>GUACAMOLE-1254</a>)</li>
+  <li>Correct double-free when built against FreeRDP 2.0.0-rc4 (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1259";>GUACAMOLE-1259</a>)</li>
+  <li class="bug">Double-free may occur upon VNC disconnect (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1263";>GUACAMOLE-1263</a>)</li>
+  <li class="bug">RDP file uploads may (still) be truncated to 32 bits (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1276";>GUACAMOLE-1276</a>)</li>
+  <li class="bug">Legacy RDP encryption may fail with <code 
class="language-plaintext highlighter-rouge">ERRINFO_DECRYPT_FAILED</code> (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1283";>GUACAMOLE-1283</a>)</li>
+  <li>Add support for forcing lossless compression of graphics (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1302";>GUACAMOLE-1302</a>)</li>
+  <li class="bug"><code class="language-plaintext 
highlighter-rouge">leave_handler</code> is not correctly set (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1350";>GUACAMOLE-1350</a>)</li>
+  <li>Map “meta” (Windows) key for RDP connections (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1386";>GUACAMOLE-1386</a>)</li>
+</ul>
+
+<h3 id="internationalization">Internationalization</h3>
+
+<ul>
+  <li>Update Russian on-screen keyboard to allow input of Latin characters (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1055";>GUACAMOLE-1055</a>)</li>
+  <li>Add Norwegian keymap for RDP (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1064";>GUACAMOLE-1064</a>)</li>
+  <li>Update/improve French translation (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1160";>GUACAMOLE-1160</a>)</li>
+  <li>Add support for Portuguese language (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1207";>GUACAMOLE-1207</a>)</li>
+  <li>Update/improve Japanese translation (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1265";>GUACAMOLE-1265</a>)</li>
+  <li class="bug">Dash and underscore in <code class="language-plaintext 
highlighter-rouge">fr-be-azerty</code> layout are swapped (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1277";>GUACAMOLE-1277</a>)</li>
+  <li>Add support for Korean language (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1291";>GUACAMOLE-1291</a>)</li>
+  <li class="bug">”/” key in <code class="language-plaintext 
highlighter-rouge">pt-br-qwerty</code> layout incorrectly recognized as right 
Shift (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1305";>GUACAMOLE-1305</a>)</li>
+  <li class="bug">Translation key for pending OpenID Connect redirect is 
mismatched (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1334";>GUACAMOLE-1334</a>)</li>
+  <li>Update/improve Spanish translation (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1339";>GUACAMOLE-1339</a>)</li>
+</ul>
+
+<h3 id="documentation">Documentation</h3>
+
+<ul>
+  <li>Document branding process (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-747";>GUACAMOLE-747</a>)</li>
+  <li>Add non-nullable modifiers to JSDoc parameter/return types where 
appropriate (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-986";>GUACAMOLE-986</a>)</li>
+  <li>Document configuration of <code class="language-plaintext 
highlighter-rouge">client_max_body_size</code> for Nginx (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1060";>GUACAMOLE-1060</a>)</li>
+  <li class="bug">Typo in documentation of <code class="language-plaintext 
highlighter-rouge">mimetype</code> parameter (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1185";>GUACAMOLE-1185</a>)</li>
+  <li class="bug">“Verifying” repeatedly misspelled in libguac documentation 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1225";>GUACAMOLE-1225</a>)</li>
+  <li>Migrate guacamole-manual away from DocBook (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1347";>GUACAMOLE-1347</a>)</li>
+  <li class="bug">Usage documentation of <code class="language-plaintext 
highlighter-rouge">guacNotification</code> directive is incorrect (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1396";>GUACAMOLE-1396</a>)</li>
+</ul>
+
+<h3 id="general-housekeeping-and-cleanup">General housekeeping and cleanup</h3>
+
+<ul>
+  <li class="bug">Creation of source .tar.gz fails on platforms with large 
group IDs (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-503";>GUACAMOLE-503</a>)</li>
+  <li>Update webapp dependencies to latest stable and compatible versions (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-773";>GUACAMOLE-773</a>)</li>
+  <li class="bug">Build fails against libvncclient 0.9.7 (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1227";>GUACAMOLE-1227</a>)</li>
+  <li>Implement <code class="language-plaintext 
highlighter-rouge">VerifyCertificateEx</code> rather than <code 
class="language-plaintext highlighter-rouge">VerifyCertificate</code> (FreeRDP 
2.3.1) (<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1307";>GUACAMOLE-1307</a>)</li>
+  <li class="bug">guacamole-client build fails against newer versions of JDK 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1317";>GUACAMOLE-1317</a>)</li>
+  <li class="bug">Translation files contain unnecessary trailing whitespace 
(<a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1337";>GUACAMOLE-1337</a>)</li>
+</ul>
+
+<h1 id="deprecation--compatibility-notes">Deprecation / Compatibility 
notes</h1>
+
+<p>Each 1.x release of Apache Guacamole should be compatible with components of
+older 1.x releases. This compatibility is intended at the Guacamole protocol
+level and at the extension level, but not necessarily at the API level. This
+means:</p>
+
+<ul>
+  <li>Extensions from older 1.x releases should still work in binary form, but 
may
+need code changes before their source will build against a newer version of
+guacamole-ext.</li>
+  <li>Software which uses the Guacamole protocol of an older 1.x release should
+still work.</li>
+  <li>Software which uses libguac from an older 1.x release should still work 
by
+continuing to use the libguac from that release, as newer versions of
+libguac may not be API/ABI compatible. In the case of third-party protocol
+support plugins for guacd, this means that the guacd from that release must
+also be used. Compatibility with respect to libguac is represented by the
+<a href="https://en.wikipedia.org/wiki/Soname";>soname</a>.</li>
+  <li>You should update to newer versions where applicable and when 
possible.</li>
+</ul>
+
+<p>As of 1.4.0, the following changes have been made which affect compatibility
+with past releases:</p>
+
+<h2 id="java-api-guacamole-common-changes">Java API (guacamole-common) 
changes</h2>
+
+<h3 
id="guacamolehttptunnelservlet-sessions-are-now-decoupled-from-the-guacamoletunnel-uuid"><code
 class="language-plaintext highlighter-rouge">GuacamoleHTTPTunnelServlet</code> 
sessions are now decoupled from the <code class="language-plaintext 
highlighter-rouge">GuacamoleTunnel</code> UUID</h3>
+
+<p>The <code class="language-plaintext 
highlighter-rouge">GuacamoleHTTPTunnelServlet</code> internals have been 
improved to entirely
+decouple the concept of the tunnel UUID (as returned by <code 
class="language-plaintext highlighter-rouge">getUUID()</code>) from the
+concept of the HTTP tunnel session. The HTTP tunnel now instead generates its
+own random session identifier that is independent of the UUID.</p>
+
+<p>Internal, UUID-specific functions of <code class="language-plaintext 
highlighter-rouge">GuacamoleHTTPTunnelServlet</code> like
+<code class="language-plaintext highlighter-rouge">registerTunnel()</code> and 
<code class="language-plaintext highlighter-rouge">deregisterTunnel()</code> 
have been deprecated in favor of
+versions of these functions that do not assume the tunnel will be identified by
+its UUID. It is not common to use these functions in subclasses of
+<code class="language-plaintext 
highlighter-rouge">GuacamoleHTTPTunnelServlet</code>. Any such usages should 
continue to work, but
+should be migrated to the new versions of these functions when possible.</p>
+
+<ul>
+  <li><a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-956";>GUACAMOLE-956</a> - 
Migrate away from including auth token within REST API URLs</li>
+</ul>
+
+<h2 id="extension-api-guacamole-ext-changes">Extension API (guacamole-ext) 
changes</h2>
+
+<h3 id="default-localenvironment-constructor-is-now-deprecated">Default <code 
class="language-plaintext highlighter-rouge">LocalEnvironment</code> 
constructor is now deprecated</h3>
+
+<p>To facilitate automatic retrieval of <code class="language-plaintext 
highlighter-rouge">guacamole.properties</code> values from key
+vaults, the <code class="language-plaintext 
highlighter-rouge">Environment</code> interface has been improved to allow 
arbitrary
+sources of properties to be added, and the <code class="language-plaintext 
highlighter-rouge">LocalEnvironment</code> implementation
+has been updated to be a singleton. New usages should invoke
+<code class="language-plaintext 
highlighter-rouge">LocalEnvironment.getInstance()</code> instead of manually 
creating new instances.</p>
+
+<p>Old usages of the default constructor will still work as expected, but will
+produce a compile-time warning about deprecation. The old default constructor
+will still create a new <code class="language-plaintext 
highlighter-rouge">LocalEnvironment</code> instance, however this new instance
+will actually transparently delegate to the <code class="language-plaintext 
highlighter-rouge">LocalEnvironment.getInstance()</code>
+singleton.</p>
+
+<p>Note that while completion of vault support has been bumped to the next
+release, this core API improvement is still present on 1.4.0.</p>
+
+<ul>
+  <li><a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-641";>GUACAMOLE-641</a> - 
Support storage of sensitive data within key vaults</li>
+</ul>
+
+<h2 id="libguac-api-changes">libguac API changes</h2>
+
+<h3 id="touch_handler-added-to-guac_user-structure"><code 
class="language-plaintext highlighter-rouge">touch_handler</code> added to 
<code class="language-plaintext highlighter-rouge">guac_user</code> 
structure</h3>
+
+<p>To allow multi-touch events to be passed through from client to server where
+supported, an additional <code class="language-plaintext 
highlighter-rouge">touch</code> instruction has been defined within the
+Guacamole protocol to represent the state of an individual touch. A new
+handler, <code class="language-plaintext 
highlighter-rouge">touch_handler</code>, is now present within the <code 
class="language-plaintext highlighter-rouge">guac_user</code> structure to
+allow this instruction to be handled when received from the client. This change
+affects the in-memory size of the <code class="language-plaintext 
highlighter-rouge">guac_user</code> structure.</p>
+
+<p>Downstream usages of libguac which make use of <code 
class="language-plaintext highlighter-rouge">guac_user</code> will need to be
+rebuilt to ensure that the structure sizes and memory offsets used are 
correct.</p>
+
+<ul>
+  <li><a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1204";>GUACAMOLE-1204</a> 
- Add support for RDP touch events (RDPEI)</li>
+</ul>
+
+<h3 id="guac_wol_wake-now-accepts-a-udp-port-parameter"><code 
class="language-plaintext highlighter-rouge">guac_wol_wake()</code> now accepts 
a UDP port parameter</h3>
+
+<p>The <code class="language-plaintext 
highlighter-rouge">guac_wol_wake()</code> function now accepts an additional 
parameter defining the
+UDP port to be used for the magic packet. This change affects the formal
+arguments of <code class="language-plaintext 
highlighter-rouge">guac_wol_wake()</code>.</p>
+
+<p>Downstream usages of libguac which make use of <code 
class="language-plaintext highlighter-rouge">guac_wol_wake()</code> will need to
+be updated to include the port number and rebuilt. The UDP port used previously
+for all calls to <code class="language-plaintext 
highlighter-rouge">guac_wol_wake()</code> was <code class="language-plaintext 
highlighter-rouge">9</code>, as defined by the <code class="language-plaintext 
highlighter-rouge">GUAC_WOL_PORT</code>
+constant.</p>
+
+<ul>
+  <li><a 
href="https://issues.apache.org/jira/browse/GUACAMOLE-1245";>GUACAMOLE-1245</a> 
- Add configuration option to specify WOL port</li>
+</ul>
+
+
+</div>
+
+
+            </div>
+        </div>
+
+        <!-- Footer -->
+<div id="footer">
+
+    <!-- Copyrights -->
+    <p class="copyright">
+        Copyright &copy; 2020 <a href="http://www.apache.org/";>The Apache
+            Software Foundation</a>, Licensed under the <a
+        href="http://www.apache.org/licenses/LICENSE-2.0";>Apache License,
+        Version 2.0</a>. The HTML5 shield logo has been modified from the
+        original work of the <a
+            href="http://www.w3.org/";>World Wide Web Constortium (W3C)</a>,
+        which is licensed under the <a
+            href="http://creativecommons.org/licenses/by/3.0/";>Creative
+        Commons Attribution 3.0</a> license.
+    </p>
+
+    <!-- Trademarks -->
+    <p class="trademarks">
+        Apache Guacamole, Guacamole, Apache, the Apache feather logo, and the
+        Apache Guacamole project logo are trademarks of The Apache Software
+        Foundation.
+    </p>
+
+</div>
+
+
+        <!-- Google Analytics -->
+        <script type="text/javascript">
+          
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+          (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+          
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+          
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+          ga('create', 'UA-75289145-1', 'auto');
+          ga('send', 'pageview');
+        </script>
+
+        <!-- Download tracking helper function -->
+        <script type="text/javascript">
+
+            /**
+             * Signals Google Analytics that a file is being downloaded (or, at
+             * least, we expect that it is). Note that it is not possible to
+             * determine this with 100% certainty without grepping server logs,
+             * but this should still at least help gauge interest/usage.
+             *
+             * @param {String} action
+             *     A human-readable string describing the user event which
+             *     occurred to initiate the download.
+             *
+             * @param {String} filename
+             *     The filename of the file being downloaded.
+             */
+            function trackDownload(action, filename) {
+                ga('send', 'event', {
+                    eventCategory : 'Download',
+                    eventAction   : action,
+                    eventLabel    : filename,
+                    transport     : 'beacon'
+                });
+            }
+
+        </script>
+
+        <!-- jQuery -->
+        <script src="/scripts/jquery.min.js" type="text/javascript"></script>
+
+        <!-- Dropdown toggle -->
+        <script src="/scripts/dropdown.js" type="text/javascript"></script>
+
+    </body>
+</html>
diff --git a/content/releases/index.html b/content/releases/index.html
index c96a852..a0aaa35 100644
--- a/content/releases/index.html
+++ b/content/releases/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/security/index.html b/content/security/index.html
index c75ec29..a889590 100644
--- a/content/security/index.html
+++ b/content/security/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>
diff --git a/content/styles/main.css b/content/styles/main.css
index 702b2c0..4fc8f18 100644
--- a/content/styles/main.css
+++ b/content/styles/main.css
@@ -337,6 +337,10 @@ p {
     max-width: 80%;
 }
 
+#content p img {
+    max-width: 100%;
+}
+
 div#footer {
     font-size: 0.9em;
     border-top: 1px solid silver;
@@ -519,7 +523,7 @@ div#links ul {
     margin: 0.25em 0;
 }
 
-table.releases {
+#content table.releases {
     background: #FFFFFA;
     border-collapse: collapse;
     border: 1px solid rgba(0, 0, 0, 0.5);
@@ -527,9 +531,10 @@ table.releases {
     margin-right: auto;
     margin-top: 0.25in;
     margin-bottom: 4em;
+    width: 10.5in;
 }
 
-table.releases th {
+#content table.releases th {
     margin: 0;
     padding-top: 0.5em;
     padding-bottom: 0.5em;
@@ -538,15 +543,23 @@ table.releases th {
     font-size: 1em;
     font-weight: normal;
     font-style: oblique;
+    text-align: left;
     background: #304730;
     color: white;
 }
 
-table.releases tr:nth-child(even) {
+#content table.releases tr th:first-child,
+#content table.releases tr td:first-child,
+#content table.releases tr th:last-child,
+#content table.releases tr td:last-child {
+    white-space: nowrap;
+}
+
+#content table.releases tr:nth-child(even) {
     background: rgba(0, 0, 0, 0.1);
 }
 
-table.releases td {
+#content table.releases td {
     margin: 0;
     padding-top: 0.5em;
     padding-bottom: 0.5em;
diff --git a/content/support/index.html b/content/support/index.html
index 71c670f..3332a5a 100644
--- a/content/support/index.html
+++ b/content/support/index.html
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml";>
 
     <head>
-    <link rel="stylesheet" 
href="/styles/main.css?s=5e9c45532fc2f39665aa96c2bb859fc8">
+    <link rel="stylesheet" 
href="/styles/main.css?s=2e802ec8ebf673f18506558bd1588311">
     <link rel="icon" type="image/png" href="/images/guacamole-logo-64.png"/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, 
target-densitydpi=device-dpi"/>
     <meta charset="UTF-8"/>

Reply via email to