+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.
signature.asc
Description: Message signed with OpenPGP