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
(The project plan needs to be in a standard Eclipse XML format.) |
(→Milestones) |
||
(27 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | + | = [https://projects.eclipse.org/projects/technology.paho/documentation Current Plan] = | |
− | The | + | The plans are now being held in the project metadata - see "releases" at https://projects.eclipse.org/projects/technology.paho/documentation. I'm leaving this page for reference, for the time being (Ian Craggs). |
− | + | = Old 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 | ||
+ | * 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 [[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). | ||
+ | |||
+ | = Old 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 | ||
+ | **[http://wiki.eclipse.org/Machine-to-Machine/M2MIWG/M2M_EPP_Package more information on the M2M EPP wiki] |
Revision as of 12:42, 19 March 2014
Contents
Current Plan
The plans are now being held in the project metadata - see "releases" at https://projects.eclipse.org/projects/technology.paho/documentation. I'm leaving this page for reference, for the time being (Ian Craggs).
Old 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).
Old 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