+1 Best Regards, Sean
On Wed, Nov 15, 2017 at 4:38 AM, Dave Fisher <dave2w...@comcast.net> wrote: > +1 (Binding) > > > On Nov 13, 2017, at 10:15 PM, Willem Jiang <willem.ji...@gmail.com> > wrote: > > > > Hi All, > > > > I would like to start a VOTE to bring the ServiceComb project in as an > > Apache incubator podling. > > > > The ASF voting rules are described: > > > > https://www.apache.org/foundation/voting.html > > > > A vote for accepting a new Apache Incubator podling is a majority vote > for > > which only Incubator PMC member votes are binding. > > > > This vote will run for at least 72 hours. Please VOTE as follows > > [] +1 Accept ServiceComb into the Apache Incubator > > [] +0 Abstain. > > [] -1 Do not accept ServiceComb into the Apache Incubator because ... > > > > The proposal is listed below, but you can also access it on the wiki: > > > > https://wiki.apache.org/incubator/ServiceCombProposal > > > > Best regards, > > > > Willem Jiang > > > > = ServiceComb Proposal = > > > > == Abstract == > > > > ServiceComb is a microservice framework that provides a set of tools and > > components to make development and deployment of cloud applications > easier. > > It provides functionalities such as service contract enforcement, service > > registration, service discovery, load balance, service reliability > (latency > > and fault tolerance, flow control and graceful degradation, handler chain > > tracing), eventual data consistency and so forth. > > > > == Proposal == > > > > The goal of this proposal is to bring the existing ServiceComb codebase > and > > existing developers into the Apache Software Foundation (ASF) in order to > > build a vibrant, diverse and self-governed open source community around > the > > technology. > > So far the major contributors to the project have been affiliated with > > Huawei and Huawei is planning to continue market and sell the Cloud > Service > > Engine leveraging the ServiceComb framework. > > ServiceComb is currently a registered trademark owned by Huawei, and > Huawei > > is happy to donate this trademark to Apache. > > > > Huawei is submitting this proposal to donate the Service source code and > > associated artifacts (documentation, web site content, wiki, etc.) to the > > Apache Software Foundation Incubator under the Apache License, Version > 2.0 > > and is asking Incubator PMC to establish an open source community. These > > artifacts are currently available on GitHub at > > https://github.com/ServiceComb/ and include: > > * Java Chassis: a multi-protocol (RPC & Restful) microservice framework > > which adopts contract-first design > > * Service Center: a service registry that enforces service contract upon > > service registration and discovery > > * Saga: a distributed coordinator to achieve eventual data consistency > > based on the paper "Sagas" by Hector Garcia-Molina and Kenneth Salem > > * ServiceComb.github.io: the website repo of ServiceComb. > > * The other projects will be moved to another place if ServiceComb is > > accepted by Apache as an incubator project. > > > > == Background == > > > > Microservices is a variant of the service-oriented architecture (SOA) > > architectural style that structures an application as a collection of > > loosely coupled services. ServiceComb is an open source microservice > > framework initiated as part of Huawei CSE projects (Cloud Service Engine) > > which was developed in 2015. It is a part of ServiceStage of Huawei > Public > > Cloud which is one-stop PaaS platform for enterprises and developers. > > Besides ServiceStage, it’s also used in the Huawei Core Network IOT > > Platform and Huawei consumer cloud. The number of companies using > > ServiceComb to develop their enterprise applications, they are > > chinasofti.com, isoftstone.com, pactera.com,zbj.com,movit-tech.com, and > the > > number is over 5 and counting. > > > > == Rationale == > > > > ServiceComb has been developed as a total, open source solution for > > developing cloud native applications. So far ServiceComb has existed as a > > GitHub project with committers mostly working for Huawei. We feel that > > moving it to a neutral organization like Apache, with its strong > governance > > model, is expected to help get more contributions from various > > organizations and developers, who may be concerned by exclusive control > of > > ServiceComb by Huawei. > > > > == Initial Goals == > > > > Our initial goals are to bring ServiceComb into the ASF, transition > > internal engineering processes into the open, and foster a collaborative > > development model according to the "Apache Way." Huawei and the current > > contributors to ServiceComb plan to develop new functionality in an open, > > community-driven way. To get there, the existing internal build, test and > > release processes will be refactored to support open development. > > > > 1. More specifically, our initial plan of moving ServiceComb to ASF is > > focused on: > > 2. open up the governance model in order to simplify and streamline > > contributions from the community > > 3. move the existing codebase to Apache > > 4. integrate with the Apache development process > > 5. ensure all dependencies are compliant with Apache License version 2.0 > > 6. incremental development and releases per Apache guideline > > > > == Current Status == > > > > === Meritocracy === > > > > We intend to substantially expand the initial developer and user > community > > by running the project in line with the "Apache Way". Users and new > > contributors will be treated with respect and welcomed. By participating > in > > the community and providing quality patches/support that move the project > > forward, they will earn merit. They will also be encouraged to provide > > non-code contributions (documentation, events, community management, > etc.) > > and will gain merit for doing so. Those with a proven support and quality > > track record will be encouraged to become committers and PMC members. > > > > === Community === > > ServiceComb core java sdk is developed by Huawei Cloud team, and is > widely > > used inside Huawei. It also includes developers from other companies like > > Movitech, Qianmi, witmart.com, using ServiceComb to develop > MicroServices. > > > > === Core Developers === > > The core developers are a diverse group of developers, some of whom are > > already experienced open source developers. There are at least one > Apache > > Member as well as a number of experienced developers. > > * Ning Jiang, ningji...@apache.org, Apache Member, project architect. > > * Qi Zhang, zhangq...@huawei.com, project architect > > * Xiang Yin, seam....@huawei.com, Java Chassis, Saga core developer > > * JiMin Wu, wuji...@huawei.com, Java Chassis core developer > > * Bao Liu, bao....@huawei.com, Java Chassis core developer > > * Sukesh A C, sukes...@huawei.com, Java Chassis developer > > * Mohammad Asif Siddiqui, mohammad.asif.siddiq...@huawei.com, > > ServiceCenter core developer > > * Yihua Cui, cuiyi...@huawei.com, ServiceCenter core developer > > > > === Alignment === > > We have looked upon Apache as a model for building a strong developer > > community and worked to absorb its essence and adopt its best practices. > > There are quite a number of Apache projects we want to integrate with, > such > > as Apache Camel, Apache ActiveMQ, in order to build a sophisticated > > MicroService solution for the user. > > > > == Known Risks == > > > > Development has been sponsored mostly by one single company. To > facilitate > > the full transition of the project to the Apache Way governance model, > > development must shift towards the meritocracy-centric model of growing a > > community of contributors balanced with the needs for extreme stability > and > > core implementation coherency. > > > > === Orphaned Products === > > Huawei is fully committed to ServiceComb. Moreover, Huawei has a vested > > interest in making ServiceComb succeed by driving its close integration > > with other ASF projects. We expect this to further reduce the risk of > > orphaning the product. > > > > === Inexperience with Open Source === > > Huawei has been developing and using open source software since a long > > time. Some committer have a proven track record in open source at Apache. > > Additionally, several ASF veterans agreed to mentor the project and are > > listed in this proposal. The project will rely on their guidance and > > collective wisdom to accelerate the transition of the entire team of > > initial committers towards practicing the Apache Way. > > > > === Reliance on Salaried Developers === > > Most of the contributors are paid to work in Huawei Cloud Team. While > they > > might wander from their current employers, they are unlikely to venture > far > > from their core expertise and thus will continue to be engaged with the > > project no matter who their current employers are. > > > > === Relationship with other Apache products === > > ServiceComb is not related with other Apache products directly. > > > > === An excessive fascination with the Apache brand === > > While we intend to leverage the Apache ‘branding’ when talking to other > > projects as a testament of our project’s ‘neutrality’, we have no plans > for > > making use of Apache brand in press releases nor posting billboards > > advertising acceptance of ServiceComb into Apache Incubator. > > > > === Documentation === > > > > The following documentation is relevant to this proposal. Relevant > portion > > of the documentation will be contributed to the Apache ServiceComb > project. > > > > ServiceComb Website: http://servicecomb.io/ > > > > === Initial Source === > > * https://github.com/ServiceComb/ServiceComb-Java-Chassis > > * https://github.com/ServiceComb/ServiceComb-Saga > > * https://github.com/ServiceComb/service-center > > * https://github.com/ServiceComb/ServiceComb.github.io > > > > === Source and Intellectual Property Submission Plan === > > As soon as ServiceComb is approved to join Apache Incubator, the source > > code will be transitioned via the Software Grant Agreement onto ASF > > infrastructure and in turn made available under the Apache License, > version > > 2.0. We know of no legal encumberments that would inhibit the transfer of > > source code to the ASF. > > > > === External Dependencies === > > > > 1. ServiceComb java-chassis depends on some Apache projects: > > * Commons Lang > > * Commons Codec > > * httpClient > > * CXF > > * Tomcat > > * Maven > > > > and other open source projects (organized by license) > > > > ALv2: > > * Netty > > * Spring > > * Spring-Boot > > * Zipkin > > * brave > > * protostuff > > * Jackson > > * Swagger > > * vertx > > * Netflix ribbon > > * Netflix hystrix > > * rxjava > > * Google guava > > * Google guice > > * Aspectj > > * Okhttp > > * hibernate-validator > > > > MPL: > > * Javassist > > * MIT > > * Mockito > > * SLF4J > > * Bridge-method-annotation > > * EPL 1.0 > > * JUnit > > * Logback > > > > 2.ServiceComb Saga depends on some Apache projects: > > * Commons IO > > * Commons lang > > * Maven > > > > And other open source projects (organized by license) > > ALv2: > > * servicecomb-java-chassis > > * awaitility > > * kamon > > * disruptor > > * rest-assured > > * wiremock > > * Aspectj > > > > MPL: > > * Javassist > > > > MIT: > > * Mockito > > * SLF4J > > * Bridge-method-annotation > > > > EPL 1.0: > > * JUnit > > * Logback > > > > As all dependencies are managed using Apache Maven, none of the external > > libraries need to be packaged in a source distribution. > > > > 3.ServiceComb Service-Center depends on > > Open-Source Projects(Organized by License) > > MIT > > * github.com/Knetic/govaluate > > * github.com/beorn7/perks > > * github.com/boltdb/bolt > > * github.com/couchbase/go-couchbase > > * github.com/couchbase/gomemcached > > * github.com/cupcake/rdb > > * github.com/dustin/go-humanize > > * github.com/karlseguin/ccache > > * github.com/kr/pty > > * github.com/lib/pq > > * github.com/mattn/go-runewidth > > * github.com/olekukonko/tablewriter > > * github.com/onsi/ginkgo > > * github.com/onsi/gomega > > * github.com/pelletier/go-toml > > * github.com/siddontang/go > > * github.com/siddontang/ledisdb > > * github.com/siddontang/rdb > > * github.com/ugorji/go > > * github.com/urfave/cli > > * github.com/xiang90/probing > > * github.com/bgentry/speakeasy > > * github.com/ghodss/yaml > > > > BSD 3-Clause > > * github.com/beego/x2j > > * github.com/belogik/goes > > * github.com/cloudflare/golz4 > > * github.com/edsrzf/mmap-go > > * github.com/golang/snappy > > * github.com/spf13/pflag > > * github.com/widuu/gojson > > * golang.org/x/crypto > > * golang.org/x/net > > * golang.org/x/text > > * golang.org/x/time > > * gopkg.in/cheggaaa/pb.v1 > > > > BSD 2-Clause > > * github.com/gorilla/websocket > > * github.com/syndtr/goleveldb > > > > Apache-2.0 > > * github.com/bradfitz/gomemcache > > * google.golang.org/genproto > > * github.com/astaxie/beego > > * gopkg.in/yaml.v2 > > * github.com/cockroachdb/cmux > > * github.com/casbin/casbin > > * github.com/coreos/etcd > > * github.com/coreos/go-semver > > * github.com/coreos/go-systemd > > * github.com/jonboulle/clockwork > > * github.com/prometheus/client_golang > > * github.com/prometheus/client_model > > * github.com/prometheus/common > > * github.com/prometheus/procfs > > * github.com/hsluoyz/casbin > > * github.com/coreos/pkg > > * github.com/garyburd/redigo > > * github.com/spf13/cobra > > * github.com/google/btree > > * github.com/matttproud/golang_protobuf_extensions > > > > Copyright (c) 2013, The GoGo Authors. > > * github.com/gogo/protobuf > > > > Copyright 2010 The Go Authors. > > * github.com/golang/protobuf > > > > Service-Center Frontend depends on > > Open-Source Projects(Organized by License) > > MIT: > > * angular > > * angular-animate > > * angular-aria > > * angular-material-data-table > > * angular-material > > * angular-messages > > * angular-mocks > > * angular-resource > > * angular-route > > * angular-sanitize > > * angular-swagger-ui > > * angular-translate-loader-static-files > > * angular-translate > > * angular-ui-bootstrap > > * angular-ui-router > > * bootstrap-less-only > > * bootstrap-sass-official > > * chart.js > > * Components-font-awesome > > * mmumshad/angular-yamljs > > * jeremyfa/yaml.js > > > > Apache-2.0: > > * Json-formatter > > > > BSD > > * Angular-charts.js > > * JS Foundation > > * jQuery > > > > == Required Resources == > > === Mailing Lists === > > * priv...@servicecomb.incubator.apache.org (moderated subscriptions) > > * comm...@servicecomb.incubator.apache.org > > * d...@servicecomb.incubator.apache.org > > * iss...@servicecomb.incubator.apache.org > > > > === Source Control === > > * > > https://git-wip-us.apache.org/repos/asf/incubator- > servicecomb-java-chassis.git > > * > > https://git-wip-us.apache.org/repos/asf/incubator- > servicecomb-service-center.git > > * https://git-wip-us.apache.org/repos/asf/incubator-servicecomb-saga.git > > * https://git-wip-us.apache.org/repos/asf/incubator- > servicecomb-website.git > > > > === Issue Tracking === > > JIRA Project ServiceComb > > > > === Initial Committers === > > * Ning Jiang > > * Qi Zhang > > * Xiang Yin > > * JiMin Wu > > * Bao Liu > > * Mohammad Asif Siddiqui > > * Sukesh A C > > * Yihua Cui > > * Roman Shaposhnik > > * Jean-Baptiste Onofre > > * Timothy Chen > > > > === Additional Interested Contributors === > > * Jian Zhang cos...@gmail.com > > * Bing Wang wangbb0...@gmail.com > > * Ven Jiang venji...@gmail.com > > * GeekTJS josephy...@gmail.com > > * Li Zhou eacdy0...@126.com > > * Haiwei Zhang haiwei...@foxmail.com > > * Yetiea yet...@gmail.com > > > > === Affiliations === > > * Huawei: Ning Jiang, Qi Zhang, Xiang Yin, JiMin Wu, Bao Liu, Sukesh A C, > > Mohammad Asif Siddiqui, Yihua Cui > > * Stealth: Roman Shaposhnik > > * Talend: Jean-Baptiste Onofré > > * Hyperpilot: Timothy Chen > > > > === Sponsors === > > Champion > > * Roman Shaposhnik[r...@apache.org] > > Nominated Mentors > > * Roman Shaposhnik[r...@apache.org] > > * Jean-Baptiste Onofre [jbono...@apache.org] > > * Timothy Chen[tnac...@apache.org] > > > > === Sponsoring Entity === > > * We are requesting the Incubator to sponsor this project. > >