The Apache Pekko project came about because Lightbend changed the license on Akka from Apache licensed to a Business Software License.

The Akka code was not donated to the Apache Software Foundation. Apache Pekko took the code from before the license change and has modified its branding to remove the Akka branding.

  • This means that we need to retain the existing copyright headers in any source files that have them.
  • Many types of source files in Akka projects have no copyright headers.
    • Typically, the headerless files include build scripts, some artifacts used in tests and markdown files
  • Generally speaking, we should not add Apache license headers to files that come from outside ASF projects. If the source files are granted to the ASF, the headers can be removed and replaced with Apache license headers. This is not the case with Apache Pekko.
  • We have received agreement from the Apache Legal team that we can add a customised Apache header Unable to render Jira issues macro, execution error.  
    • we have applied this header to the main source files because it is meant to make PRs easier to review - that not every PR has to turn into a discussion about what file header to use
    • we use sbt-header to check that this header is used on commonly modified files like Scala and Java files
    • with conf files, we were given advice to use a SPDX header instead Unable to render Jira issues macro, execution error.
    • we have not added the LEGAL-626 header added to all files - we believe that use of this header is optional
      • most of these files are copied from Akka 
      • files that are likely to have no header include
        • shell scripts used in builds (`.sh`)
        • git and scala build config files (`.gitignore`, `.scalafmt.conf`, etc.).
        • GitHub CI worflow files (`.yml`)
        • markdown files (`.md`)
        • some files used in testing
  • if we do create new files of our own, we add the standard Apache Software header to those

It has been discovered that some of the files we got from Akka did not properly acknowledge the use of 3rd party code.

  • We have been updating the Apache Pekko license and notice files to acknowledge any code that we have found (or that has been pointed out to us)
  • We have added license headers to source files



  • No labels