1.0.0
After getting feedback from the previous milestone releases, the focus of the Eclipse Kapua Release 1.0 is to consolidate and improve the all the existing functionalities in the following areas:
- Device Connectivity
- Message Routing
- Device Management
- Data Management
- Security
- Application Integration (REST API)
- Administration Console
With this 1.0 release the project has achieved a good coverage of the functionalities defined in its initial contribution. As with the previous releases it provides some deployment options that allow users to evaluate and/or develop the platform. Besides this the team worked in the direction of code base quality, API formalization and stability, collaboration and integration with other projects. For the reasons above, with this release, we would like to ask the graduation of the project.
This release introduces the Events-Broker component, a new service designed to support event driven interactions between Eclipse Kapua Services. By implementing Service Events, changes in global status of the platform can be propagated consistently throughout the services while keeping the dependencies between them to the minimum (loose coupling). Introducing the concept of Modules, Service Lifecycle management has been extended and integrated with the new Service Events functionality. These two pieces will enable further evolutions for implementation of microservice architecture.
No issues are reported or resolved in this release.
The team put a lot of effort testing and fixing UI/API issues in order to make the user experience as enjoyable as possible.
At present, the Eclipse Kapua project consists of 24 active members. This membership includes 12 committers and 12 contributors/developers which are spread across multiple companies ([1][2]). Initially, Eclipse Kapua consisted of only 9 members and has grown through contributions and commitment to the project from the IoT community.
The Eclipse Kapua Github repository currently has 100 forks [3] and 1081 total issues. Of the 1081 total issues, 936 have been closed. A significant portion of the issues were both reported and solved by contributors of the Eclipse Kapua community [4]. A total of 91 issues are labeled question/support. Largely they were reported by individuals that are interested in the Eclipse Kapua project and not currently directly involved in the project. Of these 91, 89 are closed.
Eclipse Kapua community meetings are held on a weekly basis every Thursday. The meetings serve as a synch point between the members of the community in order to discuss any item regarding the project. Occasionally, e.g. when a relevant technical point is discussed, the meeting is recorded to allow those who cannot attend the meeting to catch up at a later date. When this occurs, recordings are made publicly available (e.g. [5]). Another avenue used to share information with the community is through the project Wiki in GitHub [6]. Wiki pages containing “[Design Note]” in their title refer to discussions and shared documents regarding new material that will/could be added to the project. Kapua community is itself part of a bigger community in the context of the IoT Integration Working Group where it contributes in the effort of integrating Kapua with other Eclipse IoT projects (e.g. Kura, Hono, Paho) [7].
Interaction and development of the community takes place through different channels.
GitHub repo and [kapua-dev] mailing list are used by both developers and users. To reduce the learning curve of those new to the project a getting started guide is provided that allows anyone to easily build and start a fully functional instance of Kapua in a single machine [8]. Builds are fully automated by using Maven as project management tool. The guide illustrates step by step three deployment options: virtual host (using vagrant), plain Docker (using Compose), OpenShift and MiniShift. Users can choose the option most suited for their use case.
In order to attract more users in the community and to encourage Kapua adoption by other companies, the team participated to in several initiatives. Since the beginning we were active in EclipseCon Europe with talks (2016 one talk, 2017 one talk) and booths. In the context of the Eclipse IoT Working Group Kapua was used to implement the backend side of the Eclipse IoT Open Testbed which was also presented at RedHat Summit 2017 [9]. In the same event the Kapua project was used for the IoT CodeStarter hackathon [10]. A project based on Kapua was accepted for the Google Summer of Code 2017 [11]. A new talk was submitted and accepted for EclipseCon Europe 2018.
Links:
[1] https://projects.eclipse.org/projects/iot.kapua/who
[2] https://github.com/eclipse/kapua/graphs/contributors
[3] https://github.com/eclipse/kapua/network/members
[4] https://github.com/eclipse/kapua/issues?utf8=%E2%9C%93&q=is%3Aissue
[5] https://bluejeans.com/playback/s/T1fhJNjLZ2cQGCJXMwsLTC6o9OPNF5m1pP8yE5nxz4CKBhrnWkHelDjTJtvLLI5d
[6] https://github.com/eclipse/kapua/wiki
[7] https://dev.eclipse.org/mhonarc/lists/iot-wg-integration/
[8] https://github.com/eclipse/kapua
[9] https://iot.eclipse.org/testbeds/asset-tracking/
[10] https://developers.redhat.com/blog/2017/06/06/iot-hackathon-codestarter-red-hat-summit/
[11] https://summerofcode.withgoogle.com/archive/2017/projects/6399202233942016/