No description
Find a file
2023-05-23 18:34:30 +01:00
.github Fix minor whitespace in github action 2023-05-04 10:58:32 +02:00
actor/src/main Add OptionConverters.toScala methods for java Optional primitives 2023-05-09 14:34:50 +02:00
actor-testkit-typed/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
actor-tests/src/test Add OptionConverters.toScala methods for java Optional primitives 2023-05-09 14:34:50 +02:00
actor-typed/src/main Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
actor-typed-tests/src/test Fixing #246: update signature and fiddle properties in project/Paradox.scala (#302) 2023-04-27 21:20:29 +02:00
bench-jmh change default port number to 7355 2023-03-09 05:00:01 +08:00
cluster replace 2551 with 7354 2023-03-09 05:00:01 +08:00
cluster-metrics/src upgrade to jackson 2.14.2 (#273) 2023-04-05 15:44:58 +02:00
cluster-sharding/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
cluster-sharding-typed/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
cluster-tools/src change default port number to 7355 2023-03-09 05:00:01 +08:00
cluster-typed/src replace 2551 with 7354 2023-03-09 05:00:01 +08:00
coordination/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
discovery/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
distributed-data/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
docs/src Integrate sbt-license-report 2023-05-15 12:40:29 +02:00
kubernetes Try running Aeron tests again (#31172) 2022-02-22 12:56:29 +01:00
legal update pekko-cluster license (#272) 2023-03-25 13:03:29 +01:00
multi-node-testkit/src/main set license headers on conf files (#227) 2023-03-03 13:24:19 +01:00
osgi/src update more akka refs to use pekko name (#200) 2023-02-17 10:49:40 +01:00
persistence/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
persistence-query/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
persistence-shared/src/test/scala/org/apache/pekko/persistence use pekko: in urls and fix other branding issues (#184) 2023-02-22 12:48:15 +01:00
persistence-tck/src update some random akka refs (#196) 2023-02-16 10:39:18 +01:00
persistence-testkit/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
persistence-typed/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
persistence-typed-tests/src/test replace akka based names in logging code (#197) 2023-02-16 10:46:33 +01:00
pki/src Update headers with The Apache header annotated. 2023-01-12 10:59:28 +08:00
plugins/serialversion-remover-plugin/src/main Add mapValues for Scala 2.12 collection compat 2023-03-18 18:59:13 +08:00
project remove rsync plugin (#331) 2023-05-23 18:34:30 +01:00
protobuf/src/main/java/org/apache/pekko/protobuf update deprecation message (#181) 2023-02-14 23:15:30 +01:00
remote/src Fix #203: Update truststores/keystores for pekko-remote (#298) 2023-04-28 18:44:24 +02:00
remote-tests/src use pekko: in urls and fix other branding issues (#184) 2023-02-22 12:48:15 +01:00
scripts link to newly created pekko samples (#299) 2023-05-06 18:59:30 +01:00
serialization-jackson/src Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
slf4j/src use pekko: in urls and fix other branding issues (#184) 2023-02-22 12:48:15 +01:00
stream/src/main Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
stream-testkit/src set license headers on conf files (#227) 2023-03-03 13:24:19 +01:00
stream-tests/src/test Add FunctionConverters, FutureConverters and ObjectConverters 2023-05-08 12:03:37 +02:00
stream-tests-tck/src/test update some random akka refs (#196) 2023-02-16 10:39:18 +01:00
stream-typed/src use pekko: in urls and fix other branding issues (#184) 2023-02-22 12:48:15 +01:00
testkit/src set license headers on conf files (#227) 2023-03-03 13:24:19 +01:00
.asf.yaml Add github PR status checks 2023-04-17 16:50:40 +08:00
.git-blame-ignore-revs Add more format commits to .git-blame-ignore-revs 2023-05-03 08:24:59 +02:00
.gitattributes Add .gitattributes to enforce unix line endings 2022-11-05 15:01:03 +01:00
.gitignore Rename sbt akka modules 2023-01-05 11:10:50 +01:00
.jvmopts-ci Rename akka to pekko in configuration (#63) 2022-12-02 04:53:48 -08:00
.sbt-java-formatter.conf Rename akka package to org.apache.pekko 2022-11-30 16:45:15 +01:00
.sbtopts Use GhExcludeTest in CI again (#30941) 2021-11-28 19:52:16 +01:00
.scala-steward.conf Update config to 1.4.1 (#31101) 2022-02-01 17:21:30 +01:00
.scalafix.conf Rename akka package to org.apache.pekko 2022-11-30 16:45:15 +01:00
.scalafmt.conf Update scalafmt 2023-01-27 09:42:34 +01:00
build.sbt remove rsync plugin (#331) 2023-05-23 18:34:30 +01:00
CONTRIBUTING.md set license headers on conf files (#227) 2023-03-03 13:24:19 +01:00
COPYING.protobuf
DISCLAIMER add DISCLAIMER (#160) 2023-02-10 10:52:20 +01:00
LICENSE acknowledge Lagom source code (#307) 2023-05-03 18:09:46 +01:00
NOTICE update pekko notice used in jars (#250) 2023-03-15 13:42:37 +01:00
README.md add build instructions (#323) 2023-05-23 14:08:17 +01:00

Apache Pekko

Nightly Builds Nightly Aeron Tests

Apache Pekko is an open-source framework for building applications that are concurrent, distributed, resilient and elastic. Pekko uses the Actor Model to provide more intuitive high-level abstractions for concurrency. Using these abstractions, Pekko also provides libraries for persistence, streams, HTTP, and more.

Pekko is a fork of Akka 2.6.x, prior to the Akka project's adoption of the Business Source License.

Reference Documentation

See https://pekko.apache.org for the documentation including the API docs. The docs for all the Apache Pekko modules can be found there.

Building from Source

  • You will need to install sbt if you don't already have it installed
  • You should have a Java Runtime installed. Java 8 minimum.
  • Use git to clone the repo or download a source release from https://pekko.apache.org
  • Open a command window and change directory to the directory where you installed the source
  • sbt compile compiles the main source for project default version of Scala (2.13)
    • sbt +compile will compile for all supported versions of Scala
  • sbt test will compile the code and run the unit tests
  • sbt package will build the jars
    • the jars will built into target dirs of the various modules
    • for the the 'actor' module, the jar will be built to actor/target/scala-2.13/
  • sbt publishLocal will push the jars to your local Apache Ivy repository
  • sbt publishM2 will push the jars to your local Apache Maven repository
  • sbt docs/paradox will build the docs (the ones describing the module features)
    • Requires Java 11 minimum
    • sbt docs/paradoxBrowse does the same but will open the docs in your browser when complete
    • the index.html file will appear in target/paradox/site/main/
  • sbt unidoc will build the Javadocs for all the modules and load them to one place
    • the index.html file will appear in target/scala-2.13/unidoc/

Community

There are several ways to interact with the Pekko community:

  • GitHub discussions: for questions and general discussion.
  • Pekko dev mailing list: for Pekko development discussions.
  • Pekko users mailing list: for Pekko user discussions.
  • GitHub issues: for bug reports and feature requests. Please search the existing issues before creating new ones. If you are unsure whether you have found a bug, consider asking in GitHub discussions or the mailing list first.

Contributing

Contributions are very welcome. If you have an idea on how to improve Pekko, don't hesitate to create an issue or submit a pull request.

See CONTRIBUTING.md for details on the development workflow and how to create your pull request.

Code of Conduct

Apache Pekko is governed by the Apache code of conduct. By participating in this project you agree to abide by its terms.

License

Apache Pekko is available under the Apache License, version 2.0. See LICENSE file for details.