From 78890a97ff60d43ee20710e2c534adbafea1ccef Mon Sep 17 00:00:00 2001 From: Dimitri Huisman Date: Thu, 1 Oct 2020 20:32:05 +0200 Subject: [PATCH 1/7] Preparations for 1.8 release. --- .travis.yml | 3 +- CHANGELOG.md | 46 ++++++++++++++++++++++++++-- core/admin/mailu/configuration.py | 2 +- docs/conf.py | 3 +- docs/releases.rst | 32 ++++++++++++++++++- docs/setup.rst | 2 +- towncrier/newsfragments/1011.feature | 1 - towncrier/newsfragments/1098.misc | 1 - towncrier/newsfragments/1113.feature | 1 - towncrier/newsfragments/1158.feature | 1 - towncrier/newsfragments/1160.feature | 1 - towncrier/newsfragments/1167.doc | 1 - towncrier/newsfragments/1194.feature | 1 - towncrier/newsfragments/1197.feature | 1 - towncrier/newsfragments/1207.feature | 1 - towncrier/newsfragments/1214.misc | 1 - towncrier/newsfragments/1221.removal | 1 - towncrier/newsfragments/1255.bugfix | 1 - towncrier/newsfragments/1259.feature | 1 - towncrier/newsfragments/1267.feature | 1 - towncrier/newsfragments/1268.feature | 1 - towncrier/newsfragments/1289.bugfix | 1 - towncrier/newsfragments/1298.feature | 1 - towncrier/newsfragments/1308.misc | 1 - towncrier/newsfragments/1320.feature | 1 - towncrier/newsfragments/1357.feature | 1 - towncrier/newsfragments/1394.bugfix | 1 - towncrier/newsfragments/1438.bugfix | 1 - towncrier/newsfragments/1444.misc | 1 - towncrier/newsfragments/1463.bugfix | 1 - towncrier/newsfragments/1486.bugfix | 1 - towncrier/newsfragments/1512.misc | 1 - towncrier/newsfragments/1538.feature | 1 - towncrier/newsfragments/1564.bugfix | 1 - towncrier/newsfragments/1590.doc | 1 - towncrier/newsfragments/1635.feature | 1 - towncrier/newsfragments/328.feature | 1 - towncrier/newsfragments/508.misc | 1 - towncrier/newsfragments/985.feature | 1 - 39 files changed, 80 insertions(+), 41 deletions(-) delete mode 100644 towncrier/newsfragments/1011.feature delete mode 100644 towncrier/newsfragments/1098.misc delete mode 100644 towncrier/newsfragments/1113.feature delete mode 100644 towncrier/newsfragments/1158.feature delete mode 100644 towncrier/newsfragments/1160.feature delete mode 100644 towncrier/newsfragments/1167.doc delete mode 100644 towncrier/newsfragments/1194.feature delete mode 100644 towncrier/newsfragments/1197.feature delete mode 100644 towncrier/newsfragments/1207.feature delete mode 100644 towncrier/newsfragments/1214.misc delete mode 100644 towncrier/newsfragments/1221.removal delete mode 100644 towncrier/newsfragments/1255.bugfix delete mode 100644 towncrier/newsfragments/1259.feature delete mode 100644 towncrier/newsfragments/1267.feature delete mode 100644 towncrier/newsfragments/1268.feature delete mode 100644 towncrier/newsfragments/1289.bugfix delete mode 100644 towncrier/newsfragments/1298.feature delete mode 100644 towncrier/newsfragments/1308.misc delete mode 100644 towncrier/newsfragments/1320.feature delete mode 100644 towncrier/newsfragments/1357.feature delete mode 100644 towncrier/newsfragments/1394.bugfix delete mode 100644 towncrier/newsfragments/1438.bugfix delete mode 100644 towncrier/newsfragments/1444.misc delete mode 100644 towncrier/newsfragments/1463.bugfix delete mode 100644 towncrier/newsfragments/1486.bugfix delete mode 100644 towncrier/newsfragments/1512.misc delete mode 100644 towncrier/newsfragments/1538.feature delete mode 100644 towncrier/newsfragments/1564.bugfix delete mode 100644 towncrier/newsfragments/1590.doc delete mode 100644 towncrier/newsfragments/1635.feature delete mode 100644 towncrier/newsfragments/328.feature delete mode 100644 towncrier/newsfragments/508.misc delete mode 100644 towncrier/newsfragments/985.feature diff --git a/.travis.yml b/.travis.yml index 9de9cea3..467f6f5b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,9 +5,10 @@ branches: - '1.5' - '1.6' - '1.7' + - '1.8' - master # version tags, e.g. 1.7.1 - - /^1\.[567]\.\d+$/ + - /^1\.[5678]\.\d+$/ # pre-releases, e.g. 1.8-pre1 - /^1\.8-pre\d+$/ # test branches, e.g. test-debian diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ccde4bc..708eb092 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,51 @@ Changelog ========= -Notable changes to this project are documented in the current file. For more -details about individual changes, see the Git log. You should read this before -upgrading Mailu as some changes will include useful notes. +Upgrade should run fine as long as you generate a new compose or stack +configuration and upgrade your mailu.env. + +There are some changes to the configuration overrides. Override files are now mounted read-only into the containers. +The Dovecot and Postfix overrides are moved in their own sub-directory. +If there are local override files, they will need to be moved from overrides/ to overrides/dovecot and overrides/postfix/. +See https://mailu.io/1.8/faq.html#how-can-i-override-settings for all the mappings. + +Please not that the shipped image for PostgreSQL database is deprecated. +We advise to switch to an external database server. +v1.8.0 - 2020-09-28 +-------------------- + +- Features: Add support for backward-forwarding using SRS ([#328](https://github.com/Mailu/Mailu/issues/328)) +- Features: Add options to support different architectures builds ([#985](https://github.com/Mailu/Mailu/issues/985)) +- Features: Add support for Traefik v2 certificate dumping ([#1011](https://github.com/Mailu/Mailu/issues/1011)) +- Features: Resolve hosts to IPs if only HOST_* is set. If *_ADDRESS is set, leave it unresolved. ([#1113](https://github.com/Mailu/Mailu/issues/1113)) +- Features: - Use nginx as http endpoint on kubernetes to simplify ingress ([#1158](https://github.com/Mailu/Mailu/issues/1158)) +- Features: Advertise correct mail capabilities through the front-container, this also enables support for PIPELINING in mail-protocols and IMAP IDLE which is a (potential) performance gain. ([#1160](https://github.com/Mailu/Mailu/issues/1160)) +- Features: Change default password scheme to PBKDF2 ([#1194](https://github.com/Mailu/Mailu/issues/1194)) +- Features: Enable access log of admin service only for log levels of INFO and finer ([#1197](https://github.com/Mailu/Mailu/issues/1197)) +- Features: japanese loca is now available ([#1207](https://github.com/Mailu/Mailu/issues/1207)) +- Features: Allow to reject virus mails by setting ANTIVITUS_ACTION=reject ([#1259](https://github.com/Mailu/Mailu/issues/1259)) +- Features: Update roundcube to 1.4.0 and enable the new elastic skin ([#1267](https://github.com/Mailu/Mailu/issues/1267)) +- Features: The roundcube container does support mysql now (no setup integration yet) ([#1268](https://github.com/Mailu/Mailu/issues/1268)) +- Features: Added CardDAV-Plugin for webmail roundcube. ([#1298](https://github.com/Mailu/Mailu/issues/1298)) +- Features: Allow users to use server-sided full-text-search again by adding the dovecot fts-xapian plugin ([#1320](https://github.com/Mailu/Mailu/issues/1320)) +- Features: Relay a domain to a nonstandard SMTP port by adding ":" to the remote hostname or IP address. ([#1357](https://github.com/Mailu/Mailu/issues/1357)) +- Features: Introduce option to disable dovecot full-text-search by an enviroment variable. ([#1538](https://github.com/Mailu/Mailu/issues/1538)) +- Features: Add support for AUTH LOGIN authentication mechanism for relaying email via smart hosts. ([#1635](https://github.com/Mailu/Mailu/issues/1635)) +- Bugfixes: Use pip package for radicale to fix failing builds caused by [alpine]upstream package rebuild against different python version ([#1255](https://github.com/Mailu/Mailu/issues/1255)) +- Bugfixes: Disable Health checks on swarm mode ([#1289](https://github.com/Mailu/Mailu/issues/1289)) +- Bugfixes: Show SPF records in accordance with RFC 7208: Previously we instructed admins to create SPF and TXT records, where only TXT records are correct now. !! Attention !! You need to manually remove the SPF-typed records and keep only TXT in your DNS. ([#1394](https://github.com/Mailu/Mailu/issues/1394)) +- Bugfixes: Cover relearning messages when moving bewteen Ham and Spam status ([#1438](https://github.com/Mailu/Mailu/issues/1438)) +- Bugfixes: Defining POSTMASTER through setup tool apply also to DMARC_RUA and DMARC_RUF settings ([#1463](https://github.com/Mailu/Mailu/issues/1463)) +- Bugfixes: Check postfix mailqueue permissions before start-up ([#1486](https://github.com/Mailu/Mailu/issues/1486)) +- Bugfixes: Fixes certbot renewal ([#1564](https://github.com/Mailu/Mailu/issues/1564)) +- Improved Documentation: Added documentation that describes how spam filtering works in Mailu. ([#1167](https://github.com/Mailu/Mailu/issues/1167)) +- Improved Documentation: Add documentation for the web administration interface. ([#1590](https://github.com/Mailu/Mailu/issues/1590)) +- Deprecations and Removals: Dovecot: Delete obsolete data volume ([#1221](https://github.com/Mailu/Mailu/issues/1221)) +- Misc: ([#508](https://github.com/Mailu/Mailu/issues/508), [#1098](https://github.com/Mailu/Mailu/issues/1098), [#1214](https://github.com/Mailu/Mailu/issues/1214), [#1308](https://github.com/Mailu/Mailu/issues/1308), [#1444](https://github.com/Mailu/Mailu/issues/1444), [#1512](https://github.com/Mailu/Mailu/issues/1512)) + + v1.7.0 - 2019-08-22 ------------------- diff --git a/core/admin/mailu/configuration.py b/core/admin/mailu/configuration.py index 66b0b832..2cf6a478 100644 --- a/core/admin/mailu/configuration.py +++ b/core/admin/mailu/configuration.py @@ -24,7 +24,7 @@ DEFAULT_CONFIG = { 'SQLALCHEMY_TRACK_MODIFICATIONS': False, # Statistics management 'INSTANCE_ID_PATH': '/data/instance', - 'STATS_ENDPOINT': '0.{}.stats.mailu.io', + 'STATS_ENDPOINT': '18.{}.stats.mailu.io', # Common configuration variables 'SECRET_KEY': 'changeMe', 'DOMAIN': 'mailu.io', diff --git a/docs/conf.py b/docs/conf.py index 2bb0aaf5..24648e88 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -36,11 +36,12 @@ html_context = { 'github_user': 'mailu', 'github_repo': 'mailu', 'github_version': version, - 'stable_version': '1.7', + 'stable_version': '1.8', 'versions': [ ('1.5', '/1.5/'), ('1.6', '/1.6/'), ('1.7', '/1.7/'), + ('1.8', '/1.8/'), ('master', '/master/') ], 'conf_py_path': '/docs/' diff --git a/docs/releases.rst b/docs/releases.rst index 3d50c285..0613c91c 100644 --- a/docs/releases.rst +++ b/docs/releases.rst @@ -1,15 +1,45 @@ Release notes ============= -Mailu 1.8 - tbd +Mailu 1.8 - 2020-10-02 ---------------------- +Release 1.8 has come a long way again. Due to corona the project slowed down to a crawl. Fortunately new contributors have joined the team what enabled us to still release Mailu 1.8 this year. +For a list of all changes refer to CHANGELOG.md in the root folder of the Mailu github project. Please read the 'Override location changes' section. It contains important information for the people who use the overrides folder. + +New functionality +````````````````` + +short summary of new features + +- placeholder1 +- placeholder2 + +mention alpine is updated in .... containers. + +other interesting section +````````````````````````` + +bla bla bla. +more bla bla bla. + Override location changes ````````````````````````` If you have regenerated the Docker compose and environment files, there are some changes to the configuration overrides. Override files are now mounted read-only into the containers. The Dovecot and Postfix overrides are moved in their own sub-directory. If there are local override files, they will need to be moved from ``overrides/`` to ``overrides/dovecot`` and ``overrides/postfix/``. +Upgrading +````````` + +Upgrade should run fine as long as you generate a new compose or stack +configuration and upgrade your mailu.env. + +Please not that the shipped image for PostgreSQL database is deprecated. +The shipped image for PostgreSQL is not maintained anymore from release 1.8. +We recommend switching to an external database as soon as possible. + + Mailu 1.7 - 2019-08-22 ---------------------- diff --git a/docs/setup.rst b/docs/setup.rst index c150d29a..fa31c8f8 100644 --- a/docs/setup.rst +++ b/docs/setup.rst @@ -38,7 +38,7 @@ Pick a Mailu version Mailu is shipped in multiple versions. -- ``1.7`` features the most recent stable version for Mailu. This is the +- ``1.8`` features the most recent stable version for Mailu. This is the recommended build for new setups, old setups should migrate when possible. - ``1.0``, ``1.1``, and other version branches feature old versions of Mailu diff --git a/towncrier/newsfragments/1011.feature b/towncrier/newsfragments/1011.feature deleted file mode 100644 index f7b6afd7..00000000 --- a/towncrier/newsfragments/1011.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for Traefik v2 certificate dumping \ No newline at end of file diff --git a/towncrier/newsfragments/1098.misc b/towncrier/newsfragments/1098.misc deleted file mode 100644 index d99aa24d..00000000 --- a/towncrier/newsfragments/1098.misc +++ /dev/null @@ -1 +0,0 @@ -Ignore newlines and comment-lines in postfix overrides - this means you can now make your override configfiles much more readable. diff --git a/towncrier/newsfragments/1113.feature b/towncrier/newsfragments/1113.feature deleted file mode 100644 index 156a89df..00000000 --- a/towncrier/newsfragments/1113.feature +++ /dev/null @@ -1 +0,0 @@ -Resolve hosts to IPs if only HOST_* is set. If *_ADDRESS is set, leave it unresolved. diff --git a/towncrier/newsfragments/1158.feature b/towncrier/newsfragments/1158.feature deleted file mode 100644 index 12f9c049..00000000 --- a/towncrier/newsfragments/1158.feature +++ /dev/null @@ -1 +0,0 @@ -- Use nginx as http endpoint on kubernetes to simplify ingress diff --git a/towncrier/newsfragments/1160.feature b/towncrier/newsfragments/1160.feature deleted file mode 100644 index bc5231cc..00000000 --- a/towncrier/newsfragments/1160.feature +++ /dev/null @@ -1 +0,0 @@ -Advertise correct mail capabilities through the front-container, this also enables support for PIPELINING in mail-protocols and IMAP IDLE which is a (potential) performance gain. diff --git a/towncrier/newsfragments/1167.doc b/towncrier/newsfragments/1167.doc deleted file mode 100644 index 9ab81a24..00000000 --- a/towncrier/newsfragments/1167.doc +++ /dev/null @@ -1 +0,0 @@ -Added documentation that describes how spam filtering works in Mailu. diff --git a/towncrier/newsfragments/1194.feature b/towncrier/newsfragments/1194.feature deleted file mode 100644 index ee40311a..00000000 --- a/towncrier/newsfragments/1194.feature +++ /dev/null @@ -1 +0,0 @@ -Change default password scheme to PBKDF2 diff --git a/towncrier/newsfragments/1197.feature b/towncrier/newsfragments/1197.feature deleted file mode 100644 index 0aae8a08..00000000 --- a/towncrier/newsfragments/1197.feature +++ /dev/null @@ -1 +0,0 @@ -Enable access log of admin service only for log levels of INFO and finer \ No newline at end of file diff --git a/towncrier/newsfragments/1207.feature b/towncrier/newsfragments/1207.feature deleted file mode 100644 index 321635ea..00000000 --- a/towncrier/newsfragments/1207.feature +++ /dev/null @@ -1 +0,0 @@ -japanese loca is now available diff --git a/towncrier/newsfragments/1214.misc b/towncrier/newsfragments/1214.misc deleted file mode 100644 index adda05c9..00000000 --- a/towncrier/newsfragments/1214.misc +++ /dev/null @@ -1 +0,0 @@ -Move rspamd, fetchmail and unbound services into core and optional \ No newline at end of file diff --git a/towncrier/newsfragments/1221.removal b/towncrier/newsfragments/1221.removal deleted file mode 100644 index 495fb8df..00000000 --- a/towncrier/newsfragments/1221.removal +++ /dev/null @@ -1 +0,0 @@ -Dovecot: Delete obsolete data volume \ No newline at end of file diff --git a/towncrier/newsfragments/1255.bugfix b/towncrier/newsfragments/1255.bugfix deleted file mode 100644 index 606f2f86..00000000 --- a/towncrier/newsfragments/1255.bugfix +++ /dev/null @@ -1 +0,0 @@ -Use pip package for radicale to fix failing builds caused by [alpine]upstream package rebuild against different python version diff --git a/towncrier/newsfragments/1259.feature b/towncrier/newsfragments/1259.feature deleted file mode 100644 index e726a6a9..00000000 --- a/towncrier/newsfragments/1259.feature +++ /dev/null @@ -1 +0,0 @@ -Allow to reject virus mails by setting ANTIVITUS_ACTION=reject \ No newline at end of file diff --git a/towncrier/newsfragments/1267.feature b/towncrier/newsfragments/1267.feature deleted file mode 100644 index e9fa8b3f..00000000 --- a/towncrier/newsfragments/1267.feature +++ /dev/null @@ -1 +0,0 @@ -Update roundcube to 1.4.0 and enable the new elastic skin diff --git a/towncrier/newsfragments/1268.feature b/towncrier/newsfragments/1268.feature deleted file mode 100644 index e4cf9a5a..00000000 --- a/towncrier/newsfragments/1268.feature +++ /dev/null @@ -1 +0,0 @@ -The roundcube container does support mysql now (no setup integration yet) diff --git a/towncrier/newsfragments/1289.bugfix b/towncrier/newsfragments/1289.bugfix deleted file mode 100644 index 8dc41dea..00000000 --- a/towncrier/newsfragments/1289.bugfix +++ /dev/null @@ -1 +0,0 @@ -Disable Health checks on swarm mode diff --git a/towncrier/newsfragments/1298.feature b/towncrier/newsfragments/1298.feature deleted file mode 100644 index 48d66d36..00000000 --- a/towncrier/newsfragments/1298.feature +++ /dev/null @@ -1 +0,0 @@ -Added CardDAV-Plugin for webmail roundcube. \ No newline at end of file diff --git a/towncrier/newsfragments/1308.misc b/towncrier/newsfragments/1308.misc deleted file mode 100644 index 8c196ddf..00000000 --- a/towncrier/newsfragments/1308.misc +++ /dev/null @@ -1 +0,0 @@ -Use Redis 5.0 in kubernetes manifests \ No newline at end of file diff --git a/towncrier/newsfragments/1320.feature b/towncrier/newsfragments/1320.feature deleted file mode 100644 index fc3fd5aa..00000000 --- a/towncrier/newsfragments/1320.feature +++ /dev/null @@ -1 +0,0 @@ -Allow users to use server-sided full-text-search again by adding the dovecot fts-xapian plugin diff --git a/towncrier/newsfragments/1357.feature b/towncrier/newsfragments/1357.feature deleted file mode 100644 index 56fa443f..00000000 --- a/towncrier/newsfragments/1357.feature +++ /dev/null @@ -1 +0,0 @@ -Relay a domain to a nonstandard SMTP port by adding ":" to the remote hostname or IP address. \ No newline at end of file diff --git a/towncrier/newsfragments/1394.bugfix b/towncrier/newsfragments/1394.bugfix deleted file mode 100644 index 6f17afbb..00000000 --- a/towncrier/newsfragments/1394.bugfix +++ /dev/null @@ -1 +0,0 @@ -Show SPF records in accordance with RFC 7208: Previously we instructed admins to create SPF and TXT records, where only TXT records are correct now. !! Attention !! You need to manually remove the SPF-typed records and keep only TXT in your DNS. diff --git a/towncrier/newsfragments/1438.bugfix b/towncrier/newsfragments/1438.bugfix deleted file mode 100644 index 73796bf7..00000000 --- a/towncrier/newsfragments/1438.bugfix +++ /dev/null @@ -1 +0,0 @@ -Cover relearning messages when moving bewteen Ham and Spam status diff --git a/towncrier/newsfragments/1444.misc b/towncrier/newsfragments/1444.misc deleted file mode 100644 index 82b18215..00000000 --- a/towncrier/newsfragments/1444.misc +++ /dev/null @@ -1 +0,0 @@ -Harden security by making certain configuration files read-only. Moves Postfix and Dovecot overrides an independed sub-directories. diff --git a/towncrier/newsfragments/1463.bugfix b/towncrier/newsfragments/1463.bugfix deleted file mode 100644 index 37423bfa..00000000 --- a/towncrier/newsfragments/1463.bugfix +++ /dev/null @@ -1 +0,0 @@ -Defining POSTMASTER through setup tool apply also to DMARC_RUA and DMARC_RUF settings diff --git a/towncrier/newsfragments/1486.bugfix b/towncrier/newsfragments/1486.bugfix deleted file mode 100644 index 3053455d..00000000 --- a/towncrier/newsfragments/1486.bugfix +++ /dev/null @@ -1 +0,0 @@ -Check postfix mailqueue permissions before start-up diff --git a/towncrier/newsfragments/1512.misc b/towncrier/newsfragments/1512.misc deleted file mode 100644 index a886a8c0..00000000 --- a/towncrier/newsfragments/1512.misc +++ /dev/null @@ -1 +0,0 @@ -Use Radicale 3.x for webdav service diff --git a/towncrier/newsfragments/1538.feature b/towncrier/newsfragments/1538.feature deleted file mode 100644 index cdefe766..00000000 --- a/towncrier/newsfragments/1538.feature +++ /dev/null @@ -1 +0,0 @@ -Introduce option to disable dovecot full-text-search by an enviroment variable. diff --git a/towncrier/newsfragments/1564.bugfix b/towncrier/newsfragments/1564.bugfix deleted file mode 100644 index 5c189b80..00000000 --- a/towncrier/newsfragments/1564.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fixes certbot renewal diff --git a/towncrier/newsfragments/1590.doc b/towncrier/newsfragments/1590.doc deleted file mode 100644 index ba4c8b9a..00000000 --- a/towncrier/newsfragments/1590.doc +++ /dev/null @@ -1 +0,0 @@ -Add documentation for the web administration interface. diff --git a/towncrier/newsfragments/1635.feature b/towncrier/newsfragments/1635.feature deleted file mode 100644 index 06d78d6c..00000000 --- a/towncrier/newsfragments/1635.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for AUTH LOGIN authentication mechanism for relaying email via smart hosts. diff --git a/towncrier/newsfragments/328.feature b/towncrier/newsfragments/328.feature deleted file mode 100644 index b73b478e..00000000 --- a/towncrier/newsfragments/328.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for backward-forwarding using SRS \ No newline at end of file diff --git a/towncrier/newsfragments/508.misc b/towncrier/newsfragments/508.misc deleted file mode 100644 index bf8ab534..00000000 --- a/towncrier/newsfragments/508.misc +++ /dev/null @@ -1 +0,0 @@ -Enable sponsorship \ No newline at end of file diff --git a/towncrier/newsfragments/985.feature b/towncrier/newsfragments/985.feature deleted file mode 100644 index 99caa7e2..00000000 --- a/towncrier/newsfragments/985.feature +++ /dev/null @@ -1 +0,0 @@ -Add options to support different architectures builds From 17cea83301346b7b6c58e710dc1f54bdac12c892 Mon Sep 17 00:00:00 2001 From: Dimitri Huisman Date: Sun, 4 Oct 2020 13:22:59 +0000 Subject: [PATCH 2/7] =?UTF-8?q?Completely=20remove=20step=205=20where=20yo?= =?UTF-8?q?u=20can=20set=20the=20replica=20count=20for=20docker-stack.=20A?= =?UTF-8?q?dd=20additional=20warning=20to=20=C2=B4experimental'=20notice?= =?UTF-8?q?=20in=20setup=20for=20stack.=20Add=20a=20notice=20the=20shipped?= =?UTF-8?q?=20PostgreSQL=20is=20deprecated.=20Make=20the=20external=20Post?= =?UTF-8?q?greSQL=20database=20the=20default=20option.=20Make=201.7=20the?= =?UTF-8?q?=20default=20version=20(stable=5Fversion':=20'1.7',=20in=20docs?= =?UTF-8?q?\conf.py)=20Update=20mergify.yml=20with=201.8=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .mergify.yml | 6 ++--- docs/conf.py | 2 +- setup/flavors/stack/docker-compose.yml | 8 +++--- setup/templates/steps/config.html | 6 +++-- setup/templates/steps/database.html | 11 +++++--- setup/templates/steps/stack/04_replicas.html | 28 -------------------- 6 files changed, 19 insertions(+), 42 deletions(-) delete mode 100644 setup/templates/steps/stack/04_replicas.html diff --git a/.mergify.yml b/.mergify.yml index f2e5b860..c1141a93 100644 --- a/.mergify.yml +++ b/.mergify.yml @@ -35,18 +35,18 @@ pull_request_rules: comment: message: bors r+ - - name: Backport to 1.7 branch + - name: Backport to 1.8 branch conditions: - base=master - label=type/backport actions: backport: branches: - - '1.7' + - '1.8' - name: remove outdated reviews conditions: - - base~=^(master|1.7)$ + - base~=^(master|1.8)$ actions: dismiss_reviews: approved: True diff --git a/docs/conf.py b/docs/conf.py index 24648e88..6b19f967 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -36,7 +36,7 @@ html_context = { 'github_user': 'mailu', 'github_repo': 'mailu', 'github_version': version, - 'stable_version': '1.8', + 'stable_version': '1.7', 'versions': [ ('1.5', '/1.5/'), ('1.6', '/1.6/'), diff --git a/setup/flavors/stack/docker-compose.yml b/setup/flavors/stack/docker-compose.yml index 3568cfdc..d9c5cd4f 100644 --- a/setup/flavors/stack/docker-compose.yml +++ b/setup/flavors/stack/docker-compose.yml @@ -29,7 +29,7 @@ services: - "{{ root }}/certs:/certs" - "{{ root }}/overrides/nginx:/overrides:ro" deploy: - replicas: {{ front_replicas }} + replicas: 1 admin: image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-{{ version }}} @@ -42,7 +42,7 @@ services: - "{{ root }}/data:/data" - "{{ root }}/dkim:/dkim" deploy: - replicas: {{ admin_replicas }} + replicas: 1 healthcheck: disable: true @@ -53,7 +53,7 @@ services: - "{{ root }}/mail:/mail" - "{{ root }}/overrides/dovecot:/overrides:ro" deploy: - replicas: {{ imap_replicas }} + replicas: 1 healthcheck: disable: true @@ -64,7 +64,7 @@ services: - "{{ root }}/mailqueue:/queue" - "{{ root }}/overrides/postfix:/overrides:ro" deploy: - replicas: {{ smtp_replicas }} + replicas: 1 healthcheck: disable: true diff --git a/setup/templates/steps/config.html b/setup/templates/steps/config.html index d6526eeb..29d8dddd 100644 --- a/setup/templates/steps/config.html +++ b/setup/templates/steps/config.html @@ -1,9 +1,11 @@ {% if flavor == "stack" %} {% call macros.panel("danger", "Docker stack / swarm is experimental") %} Setup is capable of generating a somewhat decent docker-compose.yml, -for the docker stack flavor. However its usage is for advanced users an is experimental. -Expect many challenges is shared mail storage and fail-over scenarios! Some user experiences +for the docker stack flavor. However its usage is for advanced users only and is experimental. +Expect many challenges such as shared mail storage and fail-over scenarios! Some user experiences have been shared on GitHub. +For this reason also think very hard about using a replica count higher than 1. This cannot be used with the default config. +Manual post-configuration is required for using a replica count higher than 1. {% endcall %} {% endif %} diff --git a/setup/templates/steps/database.html b/setup/templates/steps/database.html index af5334cc..194de577 100644 --- a/setup/templates/steps/database.html +++ b/setup/templates/steps/database.html @@ -11,13 +11,16 @@

-{% endcall %} \ No newline at end of file +{% endcall %} diff --git a/setup/templates/steps/stack/04_replicas.html b/setup/templates/steps/stack/04_replicas.html deleted file mode 100644 index 9f6de061..00000000 --- a/setup/templates/steps/stack/04_replicas.html +++ /dev/null @@ -1,28 +0,0 @@ -{% call macros.panel("info", "Step 5 - Number of replicas for containers") %} -

Select number of replicas for containers

- -
- - -
- -
- - -
- -
- - -
- -
- - -
- -{% endcall %} From 7b27d0dd4ef68ed8cf82bd7141b0b677fa43ba19 Mon Sep 17 00:00:00 2001 From: Dimitri Huisman Date: Mon, 5 Oct 2020 09:26:50 +0000 Subject: [PATCH 3/7] When selecting a non-stable version, add a message this is version is "only for testing". The stable version is set via the new environment variable stable_version. E.g. stable_version=1.7 --- setup/server.py | 5 ++++- setup/templates/base.html | 12 ++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/setup/server.py b/setup/server.py index b2ca2175..0d58fa25 100644 --- a/setup/server.py +++ b/setup/server.py @@ -53,7 +53,10 @@ def build_app(path): @app.context_processor def app_context(): - return dict(versions=os.getenv("VERSIONS","master").split(',')) + return dict( + versions=os.getenv("VERSIONS","master").split(','), + stable_version = os.getenv("stable_version", "master") + ) prefix_bp = flask.Blueprint(version, __name__) prefix_bp.jinja_loader = jinja2.ChoiceLoader([ diff --git a/setup/templates/base.html b/setup/templates/base.html index c53bd1d1..5752e91f 100644 --- a/setup/templates/base.html +++ b/setup/templates/base.html @@ -8,13 +8,21 @@

Mailu configuration

Version - {% for module in versions %} - + {% endfor %}

+ {% if version != stable_version %} + {% call macros.panel("danger", "You have not selected the stable version") %} +You have not selected the stable version. The stable version is {{ stable_version }}. +The selected version can be used for testing and reporting bugs. +For production scenarios we recommend to use the stable version. + {% endcall %} + {% endif %} + {% block page %}{% endblock %} From 7483ea1d495381b528e1c8516d156ab9d9599318 Mon Sep 17 00:00:00 2001 From: Dario Ernst Date: Mon, 12 Oct 2020 20:30:26 +0200 Subject: [PATCH 4/7] Make setup show external DB parameters automaticaly when selecting postgres Before, the "external postgres" options were not shown, even though "extrnal" was pre-selected. This fixes the mechanics surrounding the picker. --- setup/static/render.js | 7 ++++++- setup/templates/steps/database.html | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/setup/static/render.js b/setup/static/render.js index e501fffb..a817c4f0 100644 --- a/setup/static/render.js +++ b/setup/static/render.js @@ -51,7 +51,12 @@ $(document).ready(function() { } else if (this.value == 'postgresql') { $("#postgres_db").show(); $("#external_db").hide(); - $("#external_db").prop('checked', false); + $("#external_psql").prop('checked', true); + $("#external_db").show(); + $("#db_user").prop('required',true); + $("#db_pw").prop('required',true); + $("#db_url").prop('required',true); + $("#db_name").prop('required',true); } else if (this.value == 'mysql') { $("#postgres_db").hide(); $("#external_db").show(); diff --git a/setup/templates/steps/database.html b/setup/templates/steps/database.html index 194de577..ad5411ab 100644 --- a/setup/templates/steps/database.html +++ b/setup/templates/steps/database.html @@ -20,7 +20,7 @@
- + From 2e55329b8b2ee85a11024588c033b2d55e833512 Mon Sep 17 00:00:00 2001 From: Dario Ernst Date: Mon, 12 Oct 2020 21:16:17 +0200 Subject: [PATCH 5/7] Improve changelog and release texts for 1.8 --- AUTHORS.md | 3 +++ CHANGELOG.md | 6 ++++-- docs/releases.rst | 38 +++++++++++++++++++------------------- 3 files changed, 26 insertions(+), 21 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index cc3fb518..c189cfb5 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -25,3 +25,6 @@ Other contributors: - [Tim Mohlmann](https://github.com/muhlemmer) - [Contributions](https://github.com/Mailu/Mailu/commits?author=muhlemmer) - [Ionut Filip](https://github.com/ionutfilip) - [Contributions](https://github.com/Mailu/Mailu/commits?author=ionutfilip) - [Ichikawa Yuriko](https://github.com/IchikawaYukko) - [Contributions](https://github.com/Mailu/Mailu/commits?author=IchikawaYukko) Japanese translation + - [Dimitri Huisman](https://github.com/Diman0) - [Contributions](https://github.com/Mailu/Mailu/commits?author=Diman0) + - [lub](https://github.com/lub) - [Contributions](https://github.com/Mailu/Mailu/commits?author=lub) + - [Dario Ernst](https://github.com/Nebukadneza) - [Contributions](https://github.com/Mailu/Mailu/commits?author=Nebukadneza) diff --git a/CHANGELOG.md b/CHANGELOG.md index 708eb092..57fc8102 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,10 @@ Changelog Upgrade should run fine as long as you generate a new compose or stack configuration and upgrade your mailu.env. -There are some changes to the configuration overrides. Override files are now mounted read-only into the containers. -The Dovecot and Postfix overrides are moved in their own sub-directory. +Please note that the current 1.8 is what we call a "soft release": It’s there for everyone to see and use, but to limit possible user-impact of this very big release, it’s not yet the default in the setup-utility for new users. When upgrading, please treat it with some care, and be sure to always have backups! + +There are some changes to the configuration overrides. Override files are now mounted read-only into the containers. +The Dovecot and Postfix overrides are moved in their own sub-directory. If there are local override files, they will need to be moved from overrides/ to overrides/dovecot and overrides/postfix/. See https://mailu.io/1.8/faq.html#how-can-i-override-settings for all the mappings. diff --git a/docs/releases.rst b/docs/releases.rst index 0613c91c..831bc8cc 100644 --- a/docs/releases.rst +++ b/docs/releases.rst @@ -5,29 +5,22 @@ Mailu 1.8 - 2020-10-02 ---------------------- Release 1.8 has come a long way again. Due to corona the project slowed down to a crawl. Fortunately new contributors have joined the team what enabled us to still release Mailu 1.8 this year. -For a list of all changes refer to CHANGELOG.md in the root folder of the Mailu github project. Please read the 'Override location changes' section. It contains important information for the people who use the overrides folder. -New functionality -````````````````` +Please note that the current 1.8 is what we call a "soft release": It’s there for everyone to see and use, but to limit possible user-impact of this very big release, it’s not yet the default in the setup-utility for new users. When upgrading, please treat it with some care, and be sure to always have backups! -short summary of new features +For a list of all changes refer to `CHANGELOG.md` in the root folder of the Mailu github project. Please read the 'Override location changes' section. It contains important information for the people who use the overrides folder. -- placeholder1 -- placeholder2 +New Functionality & Improvements +```````````````````````````````` -mention alpine is updated in .... containers. +Here’s a short summary of new features: -other interesting section -````````````````````````` - -bla bla bla. -more bla bla bla. - -Override location changes -````````````````````````` - -If you have regenerated the Docker compose and environment files, there are some changes to the configuration overrides. -Override files are now mounted read-only into the containers. The Dovecot and Postfix overrides are moved in their own sub-directory. If there are local override files, they will need to be moved from ``overrides/`` to ``overrides/dovecot`` and ``overrides/postfix/``. +- Full-text-search is back after having been disabled for a while due to nasty bugs. +- Tons of documentation improvements, especially geared towards new users. +- (Experimental) support for different architectures, such as ARM. +- Improvements around webmails, such as CardDAV and a new skin for an updated roundcube, and support for MySQL for it. +- Improvements around relaying, such as AUTH LOGIN and non-standard port support. +- Update to alpine:3.12 as baseimage for most containers. Upgrading ````````` @@ -36,9 +29,16 @@ Upgrade should run fine as long as you generate a new compose or stack configuration and upgrade your mailu.env. Please not that the shipped image for PostgreSQL database is deprecated. -The shipped image for PostgreSQL is not maintained anymore from release 1.8. +The shipped image for PostgreSQL is not maintained anymore from release 1.8. We recommend switching to an external database as soon as possible. +Override location changes +^^^^^^^^^^^^^^^^^^^^^^^^^ + +If you have regenerated the Docker compose and environment files, there are some changes to the configuration overrides. +Override files are now mounted read-only into the containers. The Dovecot and Postfix overrides are moved in their own sub-directory. If there are local override files, they will need to be moved from ``overrides/`` to ``overrides/dovecot`` and ``overrides/postfix/``. + + Mailu 1.7 - 2019-08-22 ---------------------- From c0cc6bbaec5be25d5f5ed15d002ddbfaaaf5a602 Mon Sep 17 00:00:00 2001 From: Dario Ernst Date: Mon, 12 Oct 2020 22:10:58 +0200 Subject: [PATCH 6/7] Add DNS SPF upgrade notice; Extend Changelog items --- docs/releases.rst | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/releases.rst b/docs/releases.rst index 831bc8cc..dd819d2d 100644 --- a/docs/releases.rst +++ b/docs/releases.rst @@ -18,9 +18,13 @@ Here’s a short summary of new features: - Full-text-search is back after having been disabled for a while due to nasty bugs. - Tons of documentation improvements, especially geared towards new users. - (Experimental) support for different architectures, such as ARM. -- Improvements around webmails, such as CardDAV and a new skin for an updated roundcube, and support for MySQL for it. +- Improvements around webmails, such as CardDAV, GPG and a new skin for an updated roundcube, and support for MySQL for it. Updated Rainloop, too. - Improvements around relaying, such as AUTH LOGIN and non-standard port support. - Update to alpine:3.12 as baseimage for most containers. +- Setup warns users about compose-IPv6 deployments which have caused open relays in the past. +- Improved handling of upper-vs-lowercase aliases and user-addresses. +- Improved rate-limiting system. +- Support for SRS Upgrading ````````` @@ -38,6 +42,10 @@ Override location changes If you have regenerated the Docker compose and environment files, there are some changes to the configuration overrides. Override files are now mounted read-only into the containers. The Dovecot and Postfix overrides are moved in their own sub-directory. If there are local override files, they will need to be moved from ``overrides/`` to ``overrides/dovecot`` and ``overrides/postfix/``. +Update your DNS SPF Records +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +It has become known that the SPF DNS records generated by the admin interface are not completely standard compliant anymore. Please check the DNS records for your domains and compare them to what the new admin-interface instructs you to use. In most cases, this should be a simple copy-paste operation for you …. Mailu 1.7 - 2019-08-22 From 26839c906692e55b526d874dccff1a4c4e67c1a1 Mon Sep 17 00:00:00 2001 From: Dimitri Huisman Date: Wed, 14 Oct 2020 15:15:04 +0000 Subject: [PATCH 7/7] Fixed small typo, added clarification for full text search and added japanese local as a new feature. --- docs/releases.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/releases.rst b/docs/releases.rst index dd819d2d..e5bd06c0 100644 --- a/docs/releases.rst +++ b/docs/releases.rst @@ -15,7 +15,7 @@ New Functionality & Improvements Here’s a short summary of new features: -- Full-text-search is back after having been disabled for a while due to nasty bugs. +- Full-text-search is back after having been disabled for a while due to nasty bugs. It can still be disabled via the mailu.env file. - Tons of documentation improvements, especially geared towards new users. - (Experimental) support for different architectures, such as ARM. - Improvements around webmails, such as CardDAV, GPG and a new skin for an updated roundcube, and support for MySQL for it. Updated Rainloop, too. @@ -24,7 +24,8 @@ Here’s a short summary of new features: - Setup warns users about compose-IPv6 deployments which have caused open relays in the past. - Improved handling of upper-vs-lowercase aliases and user-addresses. - Improved rate-limiting system. -- Support for SRS +- Support for SRS. +- Japanese localisation is now available. Upgrading `````````