Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Paho/Project Plan"
< Paho
(→Open Task list) |
(proposing overall release "theme") |
||
(16 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
= Open Task list = | = Open Task list = | ||
+ | * [https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&classification=Technology&component=MQTT&component=Samples&component=Sandbox&list_id=3090526&product=Paho&query_format=advanced&order=bug_status%2Cpriority%2Cbug_severity list of open Paho bugs] | ||
* Binary releases of C and Java clients for download | * Binary releases of C and Java clients for download | ||
* LuaRock release of Lua client for download | * LuaRock release of Lua client for download | ||
Line 10: | Line 11: | ||
* Update MQTT specification with mqtt.org / mailing list clarifications | * Update MQTT specification with mqtt.org / mailing list clarifications | ||
* Some idea of [[Paho/Repository#Future_needs|potential code additions]] are on the page discussing the Repository structure. | * Some idea of [[Paho/Repository#Future_needs|potential code additions]] are on the page discussing the Repository structure. | ||
+ | * Sample/examples in the Eclipse M2M Sandbox for the JavaScript and Web Sockets support (when delivered). | ||
= Milestones = | = Milestones = | ||
Line 15: | Line 17: | ||
The Paho project will target the Eclipse Kepler release (June 26th, 2013) with a 0.9 release under Incubator status, and two intermediate releases in 4Q12 and 1Q13. | The Paho project will target the Eclipse Kepler release (June 26th, 2013) with a 0.9 release under Incubator status, and two intermediate releases in 4Q12 and 1Q13. | ||
− | == 0.1 | + | == 0.1 Build (4Q12) "M0" == |
− | This will be | + | This will be a “snapshot” build of the |
*Lua, C, and Java MQTT clients, | *Lua, C, and Java MQTT clients, | ||
*Eclipse client view, | *Eclipse client view, | ||
− | * | + | *Any additional example code. |
− | The 0.1 release will be as an “update site” with the primary goal learn and exercise the Eclipse Build/Release process and tools including Tycho | + | The 0.1 release will be as an “update site” with the primary goal to learn and exercise the Eclipse Build/Release process and tools including Tycho |
+ | |||
+ | == 0.x Release (1Q13) "M1" == | ||
+ | *Release Theme | ||
+ | ** Provide implementations of ubiquitous, platform-independent API "nuggets", with basic connect, publish, subscribe, disconnect capability to allow a device or gateway to wake or boot up and connect to an M2M, IoT or industry server, establishing a long, short or other connection as needed. | ||
+ | ** REST APIs and implementations that support core publish-subscribe functions that applications will need once connection is established. | ||
+ | ** APIs will clear differentiate configuring the implementations for both MQTT "device clients", and MQTT "application clients". | ||
+ | ** Extending support for mobile platforms and web-based interfaces. | ||
+ | ** ....... | ||
− | |||
*Line items (common to all clients) | *Line items (common to all clients) | ||
**Consistent samples/examples for all language clients | **Consistent samples/examples for all language clients | ||
Line 33: | Line 42: | ||
**… | **… | ||
* Java client line items | * Java client line items | ||
− | ** | + | ** Make jar of paho client available for download (2012) |
+ | ** Set Java client to build automatically and make jar and doc available. | ||
+ | ** jar available via Mavern | ||
+ | ** Add a non blocking API making it simpler to create applications for mobile platforms such as Android | ||
+ | ** Rework logging trace to use best practise tools (like java.util.logging) | ||
+ | ** Support for Java Micro Edition | ||
+ | * MQTT JavaScript client | ||
+ | ** Add a MQTT JavaScript client to Paho | ||
+ | ** Use WebSockets to enable 1st class MQTT support from web applications running in web browsers | ||
*Lua client line items | *Lua client line items | ||
− | ** | + | ** Implement QoS, clean session bit, username/password, make sure message header fully implemented (send and receive), support message identifier, SUBACK messages should check QoS level, deal with outstanding SUBACK messages, review "last activity in / out" timers, check for PINGRESP, better "wait for CONACK" handling, handle failed subscriptions, better error / retry handling, review Lua best practices for socket I/O and error handling |
*MQTT Protocol conformance tests | *MQTT Protocol conformance tests | ||
**Reference implementation test bed (wire capture?) | **Reference implementation test bed (wire capture?) | ||
Line 41: | Line 58: | ||
*Mobile platform support | *Mobile platform support | ||
*Sample and Example Code (integrated in IDE where possible) | *Sample and Example Code (integrated in IDE where possible) | ||
− | ** | + | **MqGnatt |
**REST APIs with end to end examples | **REST APIs with end to end examples | ||
**Basic MQTT exerciser (Eurotech) | **Basic MQTT exerciser (Eurotech) | ||
Line 50: | Line 67: | ||
== 0.9 Release (2Q13)== | == 0.9 Release (2Q13)== | ||
*M2M Package | *M2M Package | ||
+ | **align with Koneki and Mihini | ||
+ | **[http://wiki.eclipse.org/Machine-to-Machine/M2MIWG/M2M_EPP_Package more information on the M2M EPP wiki] |
Revision as of 12:56, 9 November 2012
Contents
Open Task list
- list of open Paho bugs
- Binary releases of C and Java clients for download
- LuaRock release of Lua client for download
- Tutorials for C and Java clients
- How to build and use C client on iOS
- Test suite
- Protocol compliance suite for reference implementations
- Raise MQTT Lua client to the same functional level as the C and Java client
- Update MQTT specification with mqtt.org / mailing list clarifications
- Some idea of potential code additions are on the page discussing the Repository structure.
- Sample/examples in the Eclipse M2M Sandbox for the JavaScript and Web Sockets support (when delivered).
Milestones
The Paho project will target the Eclipse Kepler release (June 26th, 2013) with a 0.9 release under Incubator status, and two intermediate releases in 4Q12 and 1Q13.
0.1 Build (4Q12) "M0"
This will be a “snapshot” build of the
- Lua, C, and Java MQTT clients,
- Eclipse client view,
- Any additional example code.
The 0.1 release will be as an “update site” with the primary goal to learn and exercise the Eclipse Build/Release process and tools including Tycho
0.x Release (1Q13) "M1"
- Release Theme
- Provide implementations of ubiquitous, platform-independent API "nuggets", with basic connect, publish, subscribe, disconnect capability to allow a device or gateway to wake or boot up and connect to an M2M, IoT or industry server, establishing a long, short or other connection as needed.
- REST APIs and implementations that support core publish-subscribe functions that applications will need once connection is established.
- APIs will clear differentiate configuring the implementations for both MQTT "device clients", and MQTT "application clients".
- Extending support for mobile platforms and web-based interfaces.
- .......
- Line items (common to all clients)
- Consistent samples/examples for all language clients
- Consistent documentation
- …
- C client line items
- …
- Eclipse client view line items
- …
- Java client line items
- Make jar of paho client available for download (2012)
- Set Java client to build automatically and make jar and doc available.
- jar available via Mavern
- Add a non blocking API making it simpler to create applications for mobile platforms such as Android
- Rework logging trace to use best practise tools (like java.util.logging)
- Support for Java Micro Edition
- MQTT JavaScript client
- Add a MQTT JavaScript client to Paho
- Use WebSockets to enable 1st class MQTT support from web applications running in web browsers
- Lua client line items
- Implement QoS, clean session bit, username/password, make sure message header fully implemented (send and receive), support message identifier, SUBACK messages should check QoS level, deal with outstanding SUBACK messages, review "last activity in / out" timers, check for PINGRESP, better "wait for CONACK" handling, handle failed subscriptions, better error / retry handling, review Lua best practices for socket I/O and error handling
- MQTT Protocol conformance tests
- Reference implementation test bed (wire capture?)
- Tracing tools/integration
- Mobile platform support
- Sample and Example Code (integrated in IDE where possible)
- MqGnatt
- REST APIs with end to end examples
- Basic MQTT exerciser (Eurotech)
- Wizards?
- New examples tbs
- websockets
0.9 Release (2Q13)
- M2M Package
- align with Koneki and Mihini
- more information on the M2M EPP wiki