From 17eb48104bf65a638219ee05a15387cd4cb7cec1 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Wed, 16 Sep 2026 19:51:02 +0100 Subject: [PATCH 1/2] chore: add Akka-derived Apache license headers to logback configs and benchmark template Motivation: A scan of the source tree found 19 logback XML configuration files and bench-jmh NewLayoutBenchmark.template with no Apache license header. The template carries only the original Lightbend copyright notice. These files are not covered by sbt-header (XML has no mapping; the .template file is outside the bench-jmh source set), so headerCheckAll never flags them. Modification: Add the "derived from Akka" Apache license header, copied verbatim from CopyrightHeader.apacheFromAkkaSourceHeader, to each file. For XML files the header is placed as a comment directly after the XML declaration where one exists. The existing Lightbend copyright notice in the template is preserved below the new header. Result: All logback configs and the benchmark template carry the Pekko Akka-derived Apache header. No behavior change. Tests: - Not run - license header only change. Every modified XML file validated with xmllint --noout; header presence re-verified by grep. References: None - license header hygiene --- actor-testkit-typed/src/test/resources/logback-test.xml | 8 ++++++++ actor-typed-tests/src/test/resources/logback-doc-dev.xml | 8 ++++++++ .../src/test/resources/logback-doc-prod.xml | 8 ++++++++ .../src/test/resources/logback-doc-test.xml | 8 ++++++++ actor-typed-tests/src/test/resources/logback-test.xml | 8 ++++++++ bench-jmh/src/main/resources/logback.xml | 8 ++++++++ .../org/apache/pekko/stream/NewLayoutBenchmark.template | 9 +++++++++ cluster-metrics/src/test/resources/logback-test.xml | 8 ++++++++ .../src/multi-jvm/resources/logback-test.xml | 8 ++++++++ .../src/test/resources/logback-test.xml | 8 ++++++++ cluster-typed/src/multi-jvm/resources/logback-test.xml | 8 ++++++++ cluster-typed/src/test/resources/logback-test.xml | 8 ++++++++ cluster/src/multi-jvm/resources/logback-test.xml | 8 ++++++++ docs/src/test/resources/logback-test.xml | 8 ++++++++ osgi/src/test/resources/logback-test.xml | 8 ++++++++ persistence-testkit/src/test/resources/logback-test.xml | 8 ++++++++ .../src/test/resources/logback-test.xml | 8 ++++++++ persistence-typed/src/test/resources/logback-test.xml | 8 ++++++++ slf4j/src/test/resources/logback-test.xml | 8 ++++++++ stream-typed/src/test/resources/logback-test.xml | 8 ++++++++ 20 files changed, 161 insertions(+) diff --git a/actor-testkit-typed/src/test/resources/logback-test.xml b/actor-testkit-typed/src/test/resources/logback-test.xml index 3c37e138ab8..cf322808316 100644 --- a/actor-testkit-typed/src/test/resources/logback-test.xml +++ b/actor-testkit-typed/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/actor-typed-tests/src/test/resources/logback-doc-dev.xml b/actor-typed-tests/src/test/resources/logback-doc-dev.xml index 281dbf3d2e8..ac3b7f8441f 100644 --- a/actor-typed-tests/src/test/resources/logback-doc-dev.xml +++ b/actor-typed-tests/src/test/resources/logback-doc-dev.xml @@ -1,4 +1,12 @@ + diff --git a/actor-typed-tests/src/test/resources/logback-doc-prod.xml b/actor-typed-tests/src/test/resources/logback-doc-prod.xml index 0e702acfc0e..2ed319d406e 100644 --- a/actor-typed-tests/src/test/resources/logback-doc-prod.xml +++ b/actor-typed-tests/src/test/resources/logback-doc-prod.xml @@ -1,4 +1,12 @@ + diff --git a/actor-typed-tests/src/test/resources/logback-doc-test.xml b/actor-typed-tests/src/test/resources/logback-doc-test.xml index 0b8a4517f90..afc7622617d 100644 --- a/actor-typed-tests/src/test/resources/logback-doc-test.xml +++ b/actor-typed-tests/src/test/resources/logback-doc-test.xml @@ -1,4 +1,12 @@ + diff --git a/actor-typed-tests/src/test/resources/logback-test.xml b/actor-typed-tests/src/test/resources/logback-test.xml index 5fdb45f2309..6293d40e2f8 100644 --- a/actor-typed-tests/src/test/resources/logback-test.xml +++ b/actor-typed-tests/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/bench-jmh/src/main/resources/logback.xml b/bench-jmh/src/main/resources/logback.xml index 57e6df13ef2..675006c157d 100644 --- a/bench-jmh/src/main/resources/logback.xml +++ b/bench-jmh/src/main/resources/logback.xml @@ -1,4 +1,12 @@ + diff --git a/bench-jmh/src/main/scala/org/apache/pekko/stream/NewLayoutBenchmark.template b/bench-jmh/src/main/scala/org/apache/pekko/stream/NewLayoutBenchmark.template index 13dec8aec1b..f41b5f94578 100644 --- a/bench-jmh/src/main/scala/org/apache/pekko/stream/NewLayoutBenchmark.template +++ b/bench-jmh/src/main/scala/org/apache/pekko/stream/NewLayoutBenchmark.template @@ -1,3 +1,12 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * license agreements; and to You under the Apache License, version 2.0: + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * This file is part of the Apache Pekko project, which was derived from Akka. + */ + /* * Copyright (C) 2018-2019 Lightbend Inc. */ diff --git a/cluster-metrics/src/test/resources/logback-test.xml b/cluster-metrics/src/test/resources/logback-test.xml index 201c1c058d9..f8a7288d2b9 100644 --- a/cluster-metrics/src/test/resources/logback-test.xml +++ b/cluster-metrics/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/cluster-sharding-typed/src/multi-jvm/resources/logback-test.xml b/cluster-sharding-typed/src/multi-jvm/resources/logback-test.xml index e36652a969e..fb44d3055fc 100644 --- a/cluster-sharding-typed/src/multi-jvm/resources/logback-test.xml +++ b/cluster-sharding-typed/src/multi-jvm/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/cluster-sharding-typed/src/test/resources/logback-test.xml b/cluster-sharding-typed/src/test/resources/logback-test.xml index e9a7bb1ad08..1f6aedfab17 100644 --- a/cluster-sharding-typed/src/test/resources/logback-test.xml +++ b/cluster-sharding-typed/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/cluster-typed/src/multi-jvm/resources/logback-test.xml b/cluster-typed/src/multi-jvm/resources/logback-test.xml index e36652a969e..fb44d3055fc 100644 --- a/cluster-typed/src/multi-jvm/resources/logback-test.xml +++ b/cluster-typed/src/multi-jvm/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/cluster-typed/src/test/resources/logback-test.xml b/cluster-typed/src/test/resources/logback-test.xml index fff8846273c..34737e6936a 100644 --- a/cluster-typed/src/test/resources/logback-test.xml +++ b/cluster-typed/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/cluster/src/multi-jvm/resources/logback-test.xml b/cluster/src/multi-jvm/resources/logback-test.xml index 8472208da38..a0a689e3457 100644 --- a/cluster/src/multi-jvm/resources/logback-test.xml +++ b/cluster/src/multi-jvm/resources/logback-test.xml @@ -1,3 +1,11 @@ + diff --git a/docs/src/test/resources/logback-test.xml b/docs/src/test/resources/logback-test.xml index 90f202b250c..dbd97707f71 100644 --- a/docs/src/test/resources/logback-test.xml +++ b/docs/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/osgi/src/test/resources/logback-test.xml b/osgi/src/test/resources/logback-test.xml index 75053fc2882..8c44cec645e 100644 --- a/osgi/src/test/resources/logback-test.xml +++ b/osgi/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/persistence-testkit/src/test/resources/logback-test.xml b/persistence-testkit/src/test/resources/logback-test.xml index e9a7bb1ad08..1f6aedfab17 100644 --- a/persistence-testkit/src/test/resources/logback-test.xml +++ b/persistence-testkit/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/persistence-typed-tests/src/test/resources/logback-test.xml b/persistence-typed-tests/src/test/resources/logback-test.xml index f5e62564835..7fd65ac93bb 100644 --- a/persistence-typed-tests/src/test/resources/logback-test.xml +++ b/persistence-typed-tests/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/persistence-typed/src/test/resources/logback-test.xml b/persistence-typed/src/test/resources/logback-test.xml index a0bfe8572a4..f905c8cedb5 100644 --- a/persistence-typed/src/test/resources/logback-test.xml +++ b/persistence-typed/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/slf4j/src/test/resources/logback-test.xml b/slf4j/src/test/resources/logback-test.xml index 5870c587c77..1c06aceeae0 100644 --- a/slf4j/src/test/resources/logback-test.xml +++ b/slf4j/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + diff --git a/stream-typed/src/test/resources/logback-test.xml b/stream-typed/src/test/resources/logback-test.xml index 5fdb45f2309..6293d40e2f8 100644 --- a/stream-typed/src/test/resources/logback-test.xml +++ b/stream-typed/src/test/resources/logback-test.xml @@ -1,4 +1,12 @@ + From 70758dd3ce5aed8287bb0d0501bcfbc05d48e1ca Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Wed, 16 Sep 2026 19:54:03 +0100 Subject: [PATCH 2/2] chore: add Apache license headers to shell scripts Motivation: Eight shell scripts had no license header. Git history shows seven were inherited from Akka before the 2022 fork; gen-ca-bundles.sh was added new in Pekko (#3528). Modification: Add the "derived from Akka" Apache header to the seven Akka-origin scripts and the standard ASF header to gen-ca-bundles.sh, placed after the shebang where one exists. Header text copied from CopyrightHeader.scala and .github/scripts/resolve-scala-version.sh respectively. Result: All shell scripts in the repository carry an Apache license header. Tests: - Not run - license header only change. bash -n passes on every script. References: None - license header hygiene --- kubernetes/setup.sh | 8 ++++++++ project/scripts/find-replace | 8 ++++++++ project/scripts/validate-automatic-module-names | 7 +++++++ .../ssl/gen-artery-nodes.example.com.sh | 7 +++++++ remote/src/test/resources/ssl/gen-ca-bundles.sh | 17 +++++++++++++++++ remote/src/test/resources/ssl/gen-functions.sh | 7 +++++++ remote/src/test/resources/ssl/genca.sh | 7 +++++++ remote/src/test/resources/ssl/gencerts.sh | 7 +++++++ 8 files changed, 68 insertions(+) mode change 100755 => 100644 kubernetes/setup.sh mode change 100755 => 100644 project/scripts/find-replace mode change 100755 => 100644 project/scripts/validate-automatic-module-names mode change 100755 => 100644 remote/src/test/resources/ssl/gen-artery-nodes.example.com.sh mode change 100755 => 100644 remote/src/test/resources/ssl/gen-ca-bundles.sh mode change 100755 => 100644 remote/src/test/resources/ssl/genca.sh mode change 100755 => 100644 remote/src/test/resources/ssl/gencerts.sh diff --git a/kubernetes/setup.sh b/kubernetes/setup.sh old mode 100755 new mode 100644 index 5abde43e97b..b65a5fdcaa0 --- a/kubernetes/setup.sh +++ b/kubernetes/setup.sh @@ -1,4 +1,12 @@ #!/bin/bash + +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + NUM_OF_NODES=$1 DEST_HOST_FILE=$2 PROTOCOL=$3 diff --git a/project/scripts/find-replace b/project/scripts/find-replace old mode 100755 new mode 100644 index def19002e8b..8dc657568da --- a/project/scripts/find-replace +++ b/project/scripts/find-replace @@ -1,4 +1,12 @@ #!/usr/bin/env bash + +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + # # Find and replace across all source files. # This script will be called as part of the release script. diff --git a/project/scripts/validate-automatic-module-names b/project/scripts/validate-automatic-module-names old mode 100755 new mode 100644 index 4eed0bdaf7b..15a2d37b261 --- a/project/scripts/validate-automatic-module-names +++ b/project/scripts/validate-automatic-module-names @@ -1,3 +1,10 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + mkdir OMG cd OMG diff --git a/remote/src/test/resources/ssl/gen-artery-nodes.example.com.sh b/remote/src/test/resources/ssl/gen-artery-nodes.example.com.sh old mode 100755 new mode 100644 index c43e1fba5f6..8a356922985 --- a/remote/src/test/resources/ssl/gen-artery-nodes.example.com.sh +++ b/remote/src/test/resources/ssl/gen-artery-nodes.example.com.sh @@ -1,5 +1,12 @@ #!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + export PW=`cat password` . gen-functions.sh diff --git a/remote/src/test/resources/ssl/gen-ca-bundles.sh b/remote/src/test/resources/ssl/gen-ca-bundles.sh old mode 100755 new mode 100644 index 71cde5e5a20..15bffe9575a --- a/remote/src/test/resources/ssl/gen-ca-bundles.sh +++ b/remote/src/test/resources/ssl/gen-ca-bundles.sh @@ -1,5 +1,22 @@ #!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + export PW=`cat password` # A CA rotation that keeps the distinguished name produces a second CA certificate sharing the diff --git a/remote/src/test/resources/ssl/gen-functions.sh b/remote/src/test/resources/ssl/gen-functions.sh index 7edd22681f8..ac2debed766 100644 --- a/remote/src/test/resources/ssl/gen-functions.sh +++ b/remote/src/test/resources/ssl/gen-functions.sh @@ -1,5 +1,12 @@ #!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + function createKeySet() { PREFIX=$1 KEYALG=$2 diff --git a/remote/src/test/resources/ssl/genca.sh b/remote/src/test/resources/ssl/genca.sh old mode 100755 new mode 100644 index e7a77cafd04..e2ee2562b28 --- a/remote/src/test/resources/ssl/genca.sh +++ b/remote/src/test/resources/ssl/genca.sh @@ -1,5 +1,12 @@ #!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + export PW=`cat password` # Create a self signed key pair root CA certificate. diff --git a/remote/src/test/resources/ssl/gencerts.sh b/remote/src/test/resources/ssl/gencerts.sh old mode 100755 new mode 100644 index b8a3217bd52..a1fd336f4aa --- a/remote/src/test/resources/ssl/gencerts.sh +++ b/remote/src/test/resources/ssl/gencerts.sh @@ -1,5 +1,12 @@ #!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one or more +# license agreements; and to You under the Apache License, version 2.0: +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# This file is part of the Apache Pekko project, which was derived from Akka. + export PW=`cat password` . gen-functions.sh