From 58da154bfc3b12fafbd5900cfee49d094d48a4db Mon Sep 17 00:00:00 2001 From: Kristian Feldsam Date: Wed, 1 Sep 2021 17:11:59 +0200 Subject: [PATCH 1/3] [Helper] Helper script to detect missing translations (#4177) Signed-off-by: Kristian Feldsam --- helper-scripts/add-new-lang-keys.php | 63 ++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 helper-scripts/add-new-lang-keys.php diff --git a/helper-scripts/add-new-lang-keys.php b/helper-scripts/add-new-lang-keys.php new file mode 100644 index 00000000..19010f86 --- /dev/null +++ b/helper-scripts/add-new-lang-keys.php @@ -0,0 +1,63 @@ + $v) { + if (is_array($arr1[$k]) && is_array($arr2[$k])) { + $d = array_diff_key_recursive($arr1[$k], $arr2[$k]); + + if ($d) { + $diff[$k] = $d; + } + } + } + + return $diff; +} + +// target lang +$targetLang = $argv[1]; + +if(empty($targetLang)) { + die('Please specify target lang as the first argument, to which you want to add missing keys from master lang (EN). Use the lowercase name, + for example `sk` for the Slovak language'."\n"); +} + +// load master lang +$masterLang = file_get_contents(__DIR__.'/../data/web/lang/lang.en.json'); +$masterLang = json_decode($masterLang, true); + +// load target lang +$lang = file_get_contents(__DIR__.'/../data/web/lang/lang.'.$targetLang.'.json'); +$lang = json_decode($lang, true); + +// compare lang keys +$result = array_diff_key_recursive($masterLang, $lang); + +if(empty($result)) { + die('No new keys were added. Looks like target lang is up to date.'."\n"); +} + +foreach($result as $key => $val) { + // check if section key exists in target lang + if(array_key_exists($key, $lang)) { + // add only missing section keys + foreach ($val as $k => $v) { + $lang[$key][$k] = $v; + } + // sort keys + ksort($lang[$key]); + } else { + // add whole section + $lang[$key] = $val; + ksort($lang); + } +} + +$lang = json_encode($lang, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES); +file_put_contents(__DIR__.'/../data/web/lang/lang.'.$targetLang.'.json', $lang); + +echo 'Following new lang keys were added and need translation:'."\n"; +print_r($result); From 482000063f17dad065c98003e911a86049feb134 Mon Sep 17 00:00:00 2001 From: andryyy Date: Mon, 30 Aug 2021 21:01:09 +0200 Subject: [PATCH 2/3] [Alpine] Upgrade to 3.14 --- data/Dockerfiles/acme/Dockerfile | 2 +- data/Dockerfiles/dockerapi/Dockerfile | 2 +- data/Dockerfiles/netfilter/Dockerfile | 2 +- data/Dockerfiles/olefy/Dockerfile | 2 +- data/Dockerfiles/unbound/Dockerfile | 2 +- data/Dockerfiles/watchdog/Dockerfile | 2 +- docker-compose.yml | 12 ++++++------ 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/data/Dockerfiles/acme/Dockerfile b/data/Dockerfiles/acme/Dockerfile index a19c4347..82369a88 100644 --- a/data/Dockerfiles/acme/Dockerfile +++ b/data/Dockerfiles/acme/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.13 +FROM alpine:3.14 LABEL maintainer "Andre Peters " diff --git a/data/Dockerfiles/dockerapi/Dockerfile b/data/Dockerfiles/dockerapi/Dockerfile index 645503a2..b6eef462 100644 --- a/data/Dockerfiles/dockerapi/Dockerfile +++ b/data/Dockerfiles/dockerapi/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.13 +FROM alpine:3.14 LABEL maintainer "Andre Peters " diff --git a/data/Dockerfiles/netfilter/Dockerfile b/data/Dockerfiles/netfilter/Dockerfile index 007bd641..c63e99bc 100644 --- a/data/Dockerfiles/netfilter/Dockerfile +++ b/data/Dockerfiles/netfilter/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.13 +FROM alpine:3.14 LABEL maintainer "Andre Peters " ENV XTABLES_LIBDIR /usr/lib/xtables diff --git a/data/Dockerfiles/olefy/Dockerfile b/data/Dockerfiles/olefy/Dockerfile index 3cacabba..6d9727c0 100644 --- a/data/Dockerfiles/olefy/Dockerfile +++ b/data/Dockerfiles/olefy/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.13 +FROM alpine:3.14 LABEL maintainer "Andre Peters " WORKDIR /app diff --git a/data/Dockerfiles/unbound/Dockerfile b/data/Dockerfiles/unbound/Dockerfile index cce2c00b..a937e7e6 100644 --- a/data/Dockerfiles/unbound/Dockerfile +++ b/data/Dockerfiles/unbound/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.13 +FROM alpine:3.14 LABEL maintainer "Andre Peters " diff --git a/data/Dockerfiles/watchdog/Dockerfile b/data/Dockerfiles/watchdog/Dockerfile index e82bc5d0..8378edd7 100644 --- a/data/Dockerfiles/watchdog/Dockerfile +++ b/data/Dockerfiles/watchdog/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.11 +FROM alpine:3.14 LABEL maintainer "André Peters " # Installation diff --git a/docker-compose.yml b/docker-compose.yml index c0e7fecd..e153d05f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,7 @@ version: '2.1' services: unbound-mailcow: - image: mailcow/unbound:1.13 + image: mailcow/unbound:1.14 environment: - TZ=${TZ} volumes: @@ -383,7 +383,7 @@ services: acme-mailcow: depends_on: - nginx-mailcow - image: mailcow/acme:1.79 + image: mailcow/acme:1.80 dns: - ${IPV4_NETWORK:-172.22.1}.254 environment: @@ -419,7 +419,7 @@ services: - acme netfilter-mailcow: - image: mailcow/netfilter:1.43 + image: mailcow/netfilter:1.44 stop_grace_period: 30s depends_on: - dovecot-mailcow @@ -442,7 +442,7 @@ services: - /lib/modules:/lib/modules:ro watchdog-mailcow: - image: mailcow/watchdog:1.92 + image: mailcow/watchdog:1.93 # Debug #command: /watchdog.sh dns: @@ -505,7 +505,7 @@ services: - watchdog dockerapi-mailcow: - image: mailcow/dockerapi:1.38 + image: mailcow/dockerapi:1.39 security_opt: - label=disable restart: always @@ -539,7 +539,7 @@ services: - solr olefy-mailcow: - image: mailcow/olefy:1.7 + image: mailcow/olefy:1.8 restart: always environment: - TZ=${TZ} From a1f9794dafd5bd5a001baafe08a3512128488fe1 Mon Sep 17 00:00:00 2001 From: andryyy Date: Wed, 1 Sep 2021 15:21:43 +0200 Subject: [PATCH 3/3] [Rspamd] Base on bullseye; remove nullnull map to _perhaps_ prevent a memleak --- data/Dockerfiles/rspamd/Dockerfile | 11 ++++++----- data/conf/rspamd/local.d/multimap.conf | 8 -------- docker-compose.yml | 2 +- 3 files changed, 7 insertions(+), 14 deletions(-) diff --git a/data/Dockerfiles/rspamd/Dockerfile b/data/Dockerfiles/rspamd/Dockerfile index 888bdcb2..ee08f8d2 100644 --- a/data/Dockerfiles/rspamd/Dockerfile +++ b/data/Dockerfiles/rspamd/Dockerfile @@ -1,8 +1,8 @@ -FROM debian:buster-slim -LABEL maintainer "Andre Peters " +FROM debian:bullseye-slim +LABEL maintainer "Andre Peters " ARG DEBIAN_FRONTEND=noninteractive -ARG CODENAME=buster +ARG CODENAME=bullseye ENV LC_ALL C RUN apt-get update && apt-get install -y \ @@ -15,12 +15,13 @@ RUN apt-get update && apt-get install -y \ && apt-key adv --fetch-keys https://rspamd.com/apt-stable/gpg.key \ && echo "deb [arch=amd64] https://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list \ && apt-get update \ - && apt-get --no-install-recommends -y install rspamd redis-tools \ + && apt-get --no-install-recommends -y install rspamd redis-tools procps nano \ && rm -rf /var/lib/apt/lists/* \ && apt-get autoremove --purge \ && apt-get clean \ && mkdir -p /run/rspamd \ - && chown _rspamd:_rspamd /run/rspamd + && chown _rspamd:_rspamd /run/rspamd \ + && echo 'alias ll="ls -la --color"' >> ~/.bashrc COPY settings.conf /etc/rspamd/settings.conf COPY metadata_exporter.lua /usr/share/rspamd/plugins/metadata_exporter.lua diff --git a/data/conf/rspamd/local.d/multimap.conf b/data/conf/rspamd/local.d/multimap.conf index 17ada99e..2ecbccf2 100644 --- a/data/conf/rspamd/local.d/multimap.conf +++ b/data/conf/rspamd/local.d/multimap.conf @@ -171,11 +171,3 @@ SMTP_LIMITED_ACCESS { symbols_set = ["SMTP_LIMITED_ACCESS"]; } -BAD_SUBJECT_00 { - type = "header"; - header = "subject"; - regexp = true; - map = "http://nullnull.org/bad-subject-regex.txt"; - score = 6.0; - symbols_set = ["BAD_SUBJECT_00"]; -} diff --git a/docker-compose.yml b/docker-compose.yml index e153d05f..9094738a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -73,7 +73,7 @@ services: - clamd rspamd-mailcow: - image: mailcow/rspamd:1.77 + image: mailcow/rspamd:1.78 stop_grace_period: 30s depends_on: - dovecot-mailcow