chore: add Apache license headers to logback configs, shell scripts and benchmark template - #3545
Merged
pjfanning merged 2 commits intoSep 17, 2026
Merged
Conversation
… 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
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 (apache#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
pjfanning
added a commit
to apache/pekko-http
that referenced
this pull request
Sep 17, 2026
…ccess (#1306) Motivation: A scan of the source tree for files without an Apache license header found two that sbt-header never sees: `project/project-info.conf`, which lives outside every source set, and `docs/src/main/paradox/.htaccess`, which has no sbt-header file type. Mirrors apache/pekko#3545, which added headers to the logback XML files, shell scripts and benchmark template that sbt-header misses in pekko. pekko-http has no logback configs, its one shell script already carries a header and its boilerplate templates are covered by the `*.scala.template` mapping in `CopyrightHeader`, so only these two files remain. Modification: Prepend the `# SPDX-License-Identifier: Apache-2.0` line that `CopyrightHeader.hashLineComment` hardcodes for every hash-comment file in this repo, matching the header on the `reference.conf` and `application.conf` files and on pekko's own `project-info.conf`. Result: Every tracked configuration and script file carries a license header. No behavior change: HOCON and Apache httpd both treat `#` lines as comments. Tests: - `project/project-info.conf` parsed and resolved with Typesafe Config 1.4.6 after the change; `project-info.scaladoc` resolves as before. - sbt headerCheckAll - pass. References: None - follows apache/pekko#3545
pjfanning
added a commit
to apache/pekko-management
that referenced
this pull request
Sep 17, 2026
…t scripts (#974) Motivation: A scan of the source tree found files with no Apache license header: three logback.xml configs, the kubernetes-api-java pom.xml, and two integration-test shell scripts. None are covered by sbt-header (XML and shell have no mapping), so headerCheckAll never flags them. Modification: Add the "derived from Akka" Apache header, copied verbatim from CopyrightHeader.apacheFromAkkaSourceHeader, to each file. All six files predate the 2022 fork. For XML the header is a comment directly after the XML declaration where one exists; for shell scripts it follows the shebang, matching the existing integration-test/kubernetes-api/test.sh. Executable bits are preserved. Result: All logback configs, XML files and shell scripts carry an Apache license header. No behavior change. Tests: - Not run - license header only change. XML files validated with xmllint --noout; scripts pass bash -n; git diff --summary shows no mode changes. References: None - license header hygiene, equivalent of apache/pekko#3545
Philippus
approved these changes
Sep 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
A scan of the source tree found the following files with no Apache license header:
bench-jmh/src/main/scala/org/apache/pekko/stream/NewLayoutBenchmark.template, which carries only the original Lightbend copyright noticeremote/src/test/resources/ssl/,kubernetes/andproject/scripts/None of these are covered by sbt-header (XML and shell have no mapping; the
.templatefile is outside the bench-jmh source set), soheaderCheckAllnever flags them.Modification
CopyrightHeader.apacheFromAkkaSourceHeader. For XML the header is a comment directly after the XML declaration where one exists. The existing Lightbend copyright notice in the template is preserved below the new header.gen-ca-bundles.shwas added new in Pekko (feat: load every certificate in the rotating keys engine ca-cert-file #3528) and gets the standard ASF header, matching.github/scripts/resolve-scala-version.sh. Headers are placed after the shebang where one exists.Result
All logback configs, shell scripts and the benchmark template carry an Apache license header. No behavior change.
Tests
xmllint --noout; every script passesbash -n; header presence re-verified by grep.References
None - license header hygiene