+1 (non-binding)

Best,
Kaijie

On 2022/10/20 07:33:38 Madhawa Gunasekara wrote:
> +1 (binding)
> 
> Thanks
> 
> On Thu 20. Oct 2022 at 09:18, Jean-Baptiste Onofré <j...@nanthrax.net> wrote:
> 
> > +1 (binding)
> >
> > Regards
> > JB
> >
> > On Wed, Oct 19, 2022 at 10:04 AM Claude Warren, Jr
> > <claude.war...@aiven.io.invalid> wrote:
> > >
> > > After reviewing the [DISCUSS] threads concerning bringing Pekko into the
> > > incubator [1][2], and finding that there is no further comment, I am
> > > calling for a VOTE to accept Pekko into the Apache Incubator.  The text
> > of
> > > the proposal is included below for convenience, final and definitive text
> > > is in the Pekko Proposal from the Incubator wiki.[3] .
> > >
> > > Thank you for your time and consideration,
> > > Claude
> > >
> > > [1] https://lists.apache.org/thread/1t0x6d815td9dgjxhck51b5txcjm28rr
> > > [2] https://lists.apache.org/thread/cjo86gdwvqlqslq68gd0c8hxq6ds6yrz
> > > [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PekkoProposal
> > >
> > > *Pekko Proposal*
> > >
> > > *Abstract*
> > >
> > > Pekko is a toolkit and an ecosystem for building highly concurrent,
> > > distributed, reactive and resilient applications for Java and Scala.
> > >
> > > *Proposal*
> > >
> > > Pekko is a toolkit that brings the actor model (popularised by Erlang) to
> > > the JVM, providing the basis for building both locally and distributed
> > > concurrency. On top of this Pekko provides a rich set of libraries built
> > on
> > > top of Actors to solve modern problems, including:
> > >
> > >    - Streams: Fully bi-directional backpressured streams following the
> > >    Reactive manifesto
> > >    - HTTP: A fully streamed HTTP client/server built on top of streams
> > that
> > >    also provides expected tools (such as connection pooling) necessary
> > for
> > >    highly available web services
> > >    - connectors: A rich set of connectors for various databases,
> > messaging,
> > >    persistent services built on top of streams
> > >    - grpc: A gRPC server/client
> > >    - projection: Provides abstractions necessary for CQRS pattern such as
> > >    envelope, necessary for systems such as Kafka.
> > >
> > > *Background*
> > >
> > > Pekko is a fork of the Akka project just before its licence changed from
> > > Apache 2 to Business Source License 1.1. The project provides a set of
> > > tools and frameworks that covers the complex problem space of distributed
> > > concurrent systems. It is designed to support the design principles of
> > the
> > > Reactive Manifesto by providing components to efficiently scale up
> > systems
> > > within a server or scale out across multiple servers, are high
> > performance,
> > > resilient to failure, distributed systems without a single point of
> > failure.
> > >
> > > *Rationale*
> > >
> > > There is a large cohort of applications and libraries that were dependent
> > > upon the original open source version of this project. Numerous
> > developers
> > > contributed their time in the belief that the project would stay open
> > > source. When the licence was changed the work of those developers was
> > > locked up and a vital resource for the cohort of applications and
> > libraries
> > > disappeared. Apache Flink is an example of a library that used the
> > original
> > > library upon which this project is based. This project is to continue the
> > > open source development that was promised under the original Apache 2
> > > licence. We ask that the Apache Foundation accept this project so as to
> > > prevent any future incompatible licence switch in the future.
> > >
> > > Apache has a long standing tradition of not accepting hostile forks.
> > There
> > > has been some discussion of whether this project violates that tradition.
> > > We believe that it does not.
> > >
> > > For many years, Lightbend has been a steward for this open source
> > project,
> > > attracting contributions from many developers and building a community
> > > under the Apache License. It's within their rights to offer their future
> > > work under a different licence. The Pekko project will provide the
> > > continuity of an Apache-licensed home for long-term support, maintenance
> > > and new features for the developers that wish to continue using and
> > > building on their previous work. The major historical reason why Apache
> > > would be a good home for Pekko is that it will protect the project from
> > > licence changes similar to what is instigating the initial incubation
> > > proposal. If Pekko becomes part of Apache then it gives confidence to the
> > > community/users of Pekko that such an incident won’t happen in the future
> > > again. There are also currently existing Apache projects such as Flink
> > that
> > > use Akka to varying degrees and hence having Pekko to be part of Apache
> > > gives confidence to these other Apache projects. We believe that this
> > fork
> > > is a maintenance of the pre-existing Apache 2 licence and ask that the
> > > Apache community view it as such.
> > >
> > > In general, Akka had a very large penetration in both Scala and Java
> > > codebases, particularly in large scale enterprise projects/systems. Since
> > > it is a JVM based library it fits well into the Apache ecosystem. We feel
> > > that we can contribute to the stability of existing Apache projects as
> > > Apache can contribute to the stability of Pekko.
> > >
> > > *Initial Goals*
> > >
> > > Due to the sheer size of Akka, initial goals will be largely be adjusting
> > > and modifying the codebase so its fit for community orientated
> > > contributions, this includes:
> > >
> > >
> > >    - Removing the Akka trademark from all sections in the code.
> > >    - Setting up the build system using github actions to make sure we
> > have
> > >    a CI system setup whenever pull requests are made (some Akka projects
> > use
> > >    github actions already, in which case we need to make sure it still
> > works
> > >    after the work).
> > >    - Also using github actions for Maven/Github releases, in Scala/SBT
> > >    projects it's typical to trigger a release when a person with
> > necessary
> > >    rights pushes a signed git tag. Also need to find a solution for the
> > >    official Apache source SVN release.
> > >    - Other adjustments such as using testcontainers to minimise the
> > >    friction in running tests for projects such as containers.
> > >    - Update all of the documentation to be appropriate for an Apache
> > >    project (as well as using the project’s name).
> > >    - Assure continuity of security fixes and update on the existing
> > >    Apache-licensed code, which might otherwise be at risk.
> > >    - Continuously building community and identifying the contributors
> > that
> > >    might assume project management roles for a successful graduation.
> > >    - Port and/or merge currently open contributions/PR’s from Akka
> > >    community, if they are willing, which are currently frozen due to the
> > >    licence change.
> > >    - This will be done after the first release of Pekko to accommodate
> > for
> > >    companies that were using Akka so that they can use a version of
> > Pekko that
> > >    is functionally equivalent to the last Apache release of Akka.
> > >
> > >
> > > *Current StatusMeritocracy:*
> > >
> > > The project upon which Pekko is based was initially very welcoming to
> > > contributions from external developers. However, they were controlled by
> > a
> > > commercial entity. Some projects were labelled as “community driven
> > > projects”, those would not have the guarantee from the entity to have a
> > > dedicated person working on them, so they needed to rely on community
> > > participation. The entity allowed trusted external developers to commit
> > to
> > > the code base and have write access to these mentioned community
> > > repositories. The new management team understands that, and hopes that
> > > developers will become engaged with the project and will help drive the
> > > development of processes as well as code so that we can become the
> > > welcoming development team we hope to be.
> > >
> > > Many of the core developers are experienced Apache developers working on
> > > other projects. Through their understanding and the work of the mentors
> > we
> > > are assured that a meritocracy will thrive around this community.
> > >
> > > *Community*:
> > > Akka being an already established open source project already has a
> > > community. This community was present in many channels, such as
> > >
> > >    - Scala reddit (/r/scala)
> > >    - Akka gitter channel
> > >    - Lightbend forums
> > >    - Scala community forums
> > >
> > > It is expected that once Pekko is launched a portion of this community
> > > (specifically the ones interested in open source contributions) would
> > > migrate to Pekko’s mailing list.
> > >
> > > Early discussions in existing community forums have shown that there is
> > > interest in an Apache project and we have commitment from several
> > channels
> > > to contribute to this project.
> > >
> > > Early participants in the discussions forming this project are
> > participants
> > > in the above channels and have a broad reach that will bring other
> > > developers into the project. In addition to software developers we have
> > > documentation specialists and test engineers participating. We have a
> > broad
> > > community. And while it does not have the depth we would like, we believe
> > > that it will continue to grow as we move forward.
> > >
> > > *Core Developers:*
> > >
> > > The individuals on the committer list are ones who have a history of
> > > contributing to the Akka project before the licence change as well as
> > > individuals that participated in community discussion on various Akka
> > > forums (i.e. Lightbend forums). In addition the individuals have a
> > history
> > > of working and contributing to open source projects.
> > >
> > > Sean Glover is a former member of the Akka team. He primarily maintained
> > > Akka Streams and related projects Alpakka and Alpakka Kafka. He currently
> > > uses Akka on the job and in other OSS projects he maintains.
> > >
> > > Phillip Warburton feels he is not enough of an expert to contribute code
> > > but is interested in contributing in to document clean-room fixes.
> > >
> > > Andy Chen is a contributor on Akka and his work is based on the Akka
> > > libraries.
> > >
> > > Jean-Luc Deprez works on a small team, mid sized software company,
> > > subsidiary of a large corporate group. His team built a project on top of
> > > Akka. The September 7th licence change came as a pretty hard personal
> > blow.
> > > He will divert his community participation this way, contributing in
> > > discussions and issues. If the team figure out a fix, you can count on a
> > PR.
> > >
> > > Greg Methvin is a maintainer on Play Framework (which is now
> > > community-maintained). We are evaluating whether this can serve as a
> > > replacement for Lightbend Akka going forward, as opposed to moving off
> > Akka
> > > entirely.
> > >
> > > Nicolas Vollmar is a maintainer on the akka-kryo-serialization project.
> > >
> > > PJ Fanning maintains a few akka related projects: swagger-akka-http and
> > > micrometer-akka.
> > >
> > > Daniel Schröter is a maintainer of the akka-kryo-serialization project.
> > > Altoo is using akka and has been regularly submitting
> > bugfixes/improvements
> > > to akka.
> > >
> > > Josep Prat is the top 5 contributor of the Akka HTTP module and did all
> > > contributions during his spare time, also he is in position 45 of all
> > time
> > > committers in the Akka project.
> > >
> > > Matthew de Detrich is a contributor to both Akka and Alpakka, submitting
> > > extra feature improvements as well as the wider Scala OS ecosystem in
> > > general (i.e. contributions to Scala stdlib itself, Scalatest etc etc).
> > > Most of these contributions were done in his spare time.
> > >
> > > Alexandru Nedelcu created Monix which is one of the popular
> > > reactive/future/IO implementation used within the Scala ecosystem that
> > > adheres to the Reactive Streams protocol. He is a very prolific
> > contributor
> > > to the Scala OS ecosystem, having been previously part of the Typelevel
> > > steering committee and also happens to works at a company that heavily
> > uses
> > > Akka for its payment systems.
> > >
> > > Johannes Rudolph is a major contributor to akka and the lead developer
> > for
> > > akka-http.
> > >
> > > *Alignment:*
> > >
> > > Apache Flink is using Akka however they are looking for a replacement due
> > > to the licence change. We expect that other Apache projects will require
> > > the same.
> > >
> > > We believe that we can be a good community member.
> > >
> > >
> > > *Known RisksProject Name*
> > >
> > > Several names were floated to replace the Akka name. There was a
> > community
> > > discussion and vote around the name
> > >
> > > We have selected the name Pekko after a vote on candidate names. Akka is
> > > the Finnish goddess of fertility and the earth. Pekko is the FInnish god
> > of
> > > farming & protector of the crops which create a nice analogy in a sense.
> > We
> > > pronounce the name Peck-O.
> > >
> > > A search of the WIPO database and EU IPO Search did not turn up any
> > active
> > > Nice category 9 trademark registrations containing the phrase “pekko”.
> > All
> > > results were “pekko” compounded with other phrases.
> > >
> > > *Orphaned products*
> > >
> > > Pekko provides libraries that are used by major companies, Apache
> > projects,
> > > and individuals. The initial development team comprises representatives
> > > from these organisations. We believe that Pekko will attract open source
> > > developers that have contributed to Akka in the past and want to see
> > their
> > > work continue to be open source. We are here, not because we are a
> > > potentially orphaned product, but rather because the contributors to the
> > > existing product want to see the open source project continue.
> > >
> > > *Inexperience with Open Source:*
> > >
> > > The project upon which Pekko is based was, as noted above, an open source
> > > project. The developers that wish to continue with the development
> > > understand open source projects. Several of the developers are committers
> > > on other Apache projects. Several are members of open source project
> > > offices at their respective employers. Several of our members are
> > > experienced in developing communities around open source projects.
> > >
> > > *Length of Incubation:*
> > >
> > > We expect that the incubation process will be quite long as we have
> > > significant code cleanup and documentation scrubbing to be completed. In
> > > addition we need to configure the Apache build systems to properly build
> > > what is a fairly complex project (i.e. akka core has tests that require
> > > multi node machines). An incubation of 1-2 years would not be unexpected.
> > >
> > > *Homogenous Developers:*
> > >
> > > The current list of committers spans Asia, Europe, and the Americas. All
> > > are experienced in working in distributed environments. While there are
> > > cultural differences, all are committed to open source development.
> > >
> > > *Reliance on Salaried Developers:*
> > >
> > > While several of the developers have the same employer, no employer has
> > > specifically stated that they are committing developers to Pekko. Any
> > > commercial contributions of time/effort are due to the need for
> > > changes/fixes to the libraries used by the commercial entities.
> > >
> > > All developers have shown a specific interest in keeping this project
> > open
> > > source and we expect that future developers will join for the same
> > reasons.
> > >
> > > *Relationships with Other Apache Products:*
> > >
> > > As noted above Akka is used by Apache Flink though Flink is planning to
> > > migrate away. We anticipate that they will transition to Pekko when it
> > > becomes available. We expect that other projects may find the library of
> > > use.
> > >
> > > *An Excessive Fascination with the Apache Brand:*
> > >
> > > We understand the need to protect the Apache brand. We also understand
> > that
> > > the Apache brand brings a licensing guarantee. While we are desirous of
> > the
> > > licensing guarantee, we believe that the project we are bringing is
> > viable
> > > and important. We think that it will provide support for at least two
> > > existing Apache projects and contribute to the strength of the Apache
> > brand
> > > world wide.
> > >
> > > *Documentation*
> > >
> > > The current documentation can be found at https://akka.io/docs Other
> > > documentation is available as .md files within the source tree of the
> > > project.
> > >
> > > *Initial Source*
> > >
> > > The original source comes from the Lightbend Akka github repository
> > before
> > > they transitioned to the Business Source License. The code base to be
> > > imported resides in several repositories under the control of Matthew
> > > Benedict de Detrich, the base one being
> > > https://github.com/mdedetrich/akka-apache-project
> > >
> > > *Source and Intellectual Property Submission Plan*
> > >
> > > Since Pekko is forked from an already existing Akka codebase there is a
> > > high chance that there may be existing IP/trademarks in the codebase that
> > > needs to be screened. The Akka name itself needs to be changed/removed
> > > entirely from the codebase.
> > >
> > > In addition there are already existing github triggers and other
> > mechanisms
> > > that build and test the system. We will need to review the triggers to
> > > determine how to implement the same or similar functionality on the
> > Apache
> > > infrastructure.
> > >
> > > Our high level plan is to:
> > >
> > >
> > >    1. A lift and shift of the existing github core repository into the
> > >    Apache repository.
> > >    2. Modification of the build and test process to run on the Apache
> > build
> > >    infrastructure.
> > >    3. Emphasis on the dev and user mailing lists for help requests and
> > >    discussions.
> > >    4. Development and modification of project documentation.
> > >    5. Create a “release” 0.1.0.
> > >    6. Verify release
> > >    7. Functionality
> > >    8. Documentation
> > >    9. Meets Apache standards
> > >    10. Continue using the above process to migrate additional libraries
> > to
> > >    the Apache libraries with each one being a release “0.x.0”
> > >    11. Upon completion of the migration of all pertinent libraries
> > release
> > >    1.0.0
> > >    12. This strategy gives us the opportunity of learning the Apache way
> > >    and the Apache infrastructure with small modules before we move into
> > the
> > >    more complex systems, building up layer by layer until we have a
> > complete
> > >    first release.
> > >
> > >
> > > *External Dependencies:*
> > >
> > > The initial code was licensed under Apache Source License v2. As such we
> > > believe that it meets all the requirements for external dependencies.
> > > However, as part of the incubation process we will verify that all
> > > dependencies have appropriate licences. Any dependencies that do not meet
> > > the requirements will be removed and alternative libraries or code used
> > > instead.
> > >
> > > *Cryptography:*
> > >
> > > We believe that there is no cryptographic code in the code base. However,
> > > as part of the incubation process we will verify that this is true.
> > >
> > >
> > > *Required ResourcesMailing lists:*
> > >
> > > priv...@pekko.incubator.apache.org
> > > d...@pekko.incubator.apache.org
> > > us...@pekko.incubator.apache.org
> > > comm...@pekko.incubator.apache.org
> > > Subversion Directory:
> > > We do not intend to use subversion.
> > >
> > > *Git Repositories:*
> > >
> > > https://gitbox.apache.org/repos/asf/incubator-pekko.git
> > >
> > > *Issue Tracking:*
> > > JIRA Pekko (PEKKO)
> > >
> > > *Initial Committers*
> > > Matthew de Detrich mdedetr...@gmail.com (CLA submitted)
> > > Josep Prat jo...@prat.tech (CLA submitted)
> > > He Pin hepin1...@gmail.com (CLA submitted)
> > > Andrea Zito zito.and...@gmail.com
> > > Andrea Peruffo andrea.peruffo1...@gmail.com
> > > Alexandru Nedelcu m...@alexn.org
> > > Joe Brockmeier j...@apache.org
> > > Sean Glover s...@seanglover.com
> > > Greg Methvin g...@methvin.net (play framework)
> > > Nicolas Vollmar nicolas.voll...@altoo.io
> > > PJ Fanning fannin...@yahoo.com
> > > Daniel Schröter d...@theone.ch
> > > Michael Kohout mwkoh...@gmail.com
> > > jxnu-liguobin dreamyl...@outlook.com
> > > Salar Rahmanian sa...@softinio.com
> > > Jonas Chapuis m...@jonaschapuis.com
> > > Andreas Gabor acc_apa...@beezle.de
> > > Johannes Rudolph johannes.rudo...@gmail.com
> > >
> > > There has been a lot of interest in being an initial committer, and we've
> > > tried to pick a fair representation of interested developers from the
> > > requests. We want to be clear that we welcome all contributions and
> > expect
> > > that the incubation period is the right time for this list to grow and
> > > evolve.
> > >
> > > *Sponsors*
> > > No company has committed to providing dedicated developers for the
> > project
> > > but Aiven and Altoo have committed to supporting development as needed by
> > > their respective organisations.
> > >
> > > *Champion*:
> > > Claude Warren cla...@apache.org
> > >
> > > *Nominated Mentors:*
> > > Claude Warren cla...@apache.org
> > > Justin McLean jmcl...@apache.org
> > > Ryan Skraba rskr...@apache.org
> > > PJ Fanning fannin...@yahoo.com
> > > Roman Shaposhnik r...@apache.org
> > > Wu Sheng wush...@apache.org
> > > JB Onofré jbono...@apache.org
> > >
> > > *Sponsoring Entity:*
> > > The Incubator
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
> > For additional commands, e-mail: general-h...@incubator.apache.org
> >
> > --
> Madhawa
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
For additional commands, e-mail: general-h...@incubator.apache.org

Reply via email to