diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 555fa471b20a85c871aa163188f13af7e130bcb5..db0025b16f74d0ab466f338d4c9db6260e778ac2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -50,7 +50,7 @@ pmdCheckstylePrettierLint:
     - 'chmod u+x "pmd-bin-$VERSION/bin/run.sh"'
     - SUCCESS=true
     - echo "Running PMD"
-    - '"pmd-bin-$VERSION/bin/run.sh" pmd -d src/main/java -f textcolor -R pmd_rules.xml 2>&1 | tee pmd.log || SUCCESS=false'
+    - '"pmd-bin-$VERSION/bin/run.sh" pmd -d src/main/java -f textcolor -R pmd_rules.xml -no-cache 2>&1 | tee pmd.log || SUCCESS=false'
     - echo "Running checkstyle"
     - ./mvnw -ntp checkstyle:check -Dmaven.repo.local=$MAVEN_USER_HOME || SUCCESS=false
     - echo "Running prettier"
diff --git a/package-lock.json b/package-lock.json
index 502a65416f6f32251843c6a1e2351d4cce746078..bdae559698de96d96044289f1f3d66bf134c6656 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -26496,7 +26496,7 @@
         "text-table": "0.2.0",
         "tree-kill": "1.2.2",
         "tslib": "2.3.1",
-        "webpack": "5.65.0",
+        "webpack": "5.66.0",
         "webpack-dev-middleware": "5.2.2",
         "webpack-dev-server": "4.6.0",
         "webpack-merge": "5.8.0",
diff --git a/src/main/docker/gitsearch.yml b/src/main/docker/gitsearch.yml
index 9ecedf6efc4ce8f84b44f93e6983a6f430c303ce..f30e95eb44c39cba5f5ead1dd55378798eacd19e 100644
--- a/src/main/docker/gitsearch.yml
+++ b/src/main/docker/gitsearch.yml
@@ -13,7 +13,7 @@ services:
       - SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE}
       - MANAGEMENT_METRICS_EXPORT_PROMETHEUS_ENABLED=true
       - SPRING_DATASOURCE_URL=jdbc:mysql://sharing_mysql:3306/gitsearch?useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC&createDatabaseIfNotExist=true
-      - JHIPSTER_SLEEP=60 # gives a small time for other services to boot before the application
+      - JHIPSTER_SLEEP=10 # gives a small time for other services to boot before the application
       - SPRING_DATA_JEST_URI=http://sharing_elasticsearch:9200
       - SPRING_ELASTICSEARCH_REST_URIS=http://sharing_elasticsearch:9200
       # see https://stackoverflow.com/questions/62676762/how-can-a-variable-set-in-the-docker-env-file-be-used-in-application-yml
diff --git a/src/main/java/at/ac/uibk/gitsearch/service/ZipRepackagingService.java b/src/main/java/at/ac/uibk/gitsearch/service/ZipRepackagingService.java
index c332b14a227cb2601914cb09d53738558b2877b0..fde1b45e0fb34b416f6e0119c9ec791fb315633a 100644
--- a/src/main/java/at/ac/uibk/gitsearch/service/ZipRepackagingService.java
+++ b/src/main/java/at/ac/uibk/gitsearch/service/ZipRepackagingService.java
@@ -24,6 +24,12 @@ import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StreamUtils;
 
+/**
+ * service to re-package a gitlab zip. Chop off leading root directory and
+ * filter out unpublished entries.
+ *
+ * @author Michael Breu
+ */
 @Service
 public class ZipRepackagingService {
 
@@ -84,17 +90,6 @@ public class ZipRepackagingService {
                 }
             } catch (IOException e) {
                 log.error("Cannot rezip file from {}", originalLocation, e);
-            } finally {
-                try {
-                    if (zipIn != null) {
-                        zipIn.close();
-                    }
-                    if (pis != null) {
-                        pis.close();
-                    }
-                } catch (IOException e) {
-                    log.error("Cannot close stream?", e);
-                }
             }
         };
 
diff --git a/src/main/resources/config/application-prod.yml b/src/main/resources/config/application-prod.yml
index c20e992f70916b93ceb375d2fe8aeb7eb372c697..d275facf0941a3246466fefdd9544db360b43371 100644
--- a/src/main/resources/config/application-prod.yml
+++ b/src/main/resources/config/application-prod.yml
@@ -58,11 +58,13 @@ spring:
     from: artemis-support-informatik@uibk.ac.at
     username: ${MAIL_USERNAME}
     password: ${MAIL_PASSWORD}
+    from: no-reply@uibk.ac.at
     smtp:
       auth: true
       starttls:
         enable: true
         required: true
+    enabled: true
   thymeleaf:
     cache: true
   security:
diff --git a/src/test/java/at/ac/uibk/gitsearch/ArchTest.java b/src/test/java/at/ac/uibk/gitsearch/ArchTest.java
index ccc717df99b733550b7f88fc61e92b2884f53554..48ea265b8c3d4f01593aba47d37e6bb46c0b79e4 100644
--- a/src/test/java/at/ac/uibk/gitsearch/ArchTest.java
+++ b/src/test/java/at/ac/uibk/gitsearch/ArchTest.java
@@ -5,11 +5,14 @@ import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.noClasses;
 import com.tngtech.archunit.core.domain.JavaClasses;
 import com.tngtech.archunit.core.importer.ClassFileImporter;
 import com.tngtech.archunit.core.importer.ImportOption;
+import java.util.concurrent.TimeUnit;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
 
 class ArchTest {
 
     @Test
+    @Timeout(value = 2, unit = TimeUnit.MINUTES)
     @SuppressWarnings("PMD")
     void servicesAndRepositoriesShouldNotDependOnWebLayer() {
         JavaClasses importedClasses = new ClassFileImporter()