Skip to content

Instantly share code, notes, and snippets.


matzew/ Secret

Last active Aug 29, 2015
What would you like to do?
DRAFT: Roadmap - Unified Push Server

Hi team,

as we are moving forward w/ the releases, and we are close to have our 1.1.0.Final, I started to think about a proposal for a near-term future roadmap, and I'd like to get feedback, comments (or tomatos) on it.

UPS 1.1.x (July/August)

  • 1.1.0 -> very soon
  • 1.1.x -> perhaps some needed bug fixes/improvements, in a short interval :-)

UPS 1.2.0 (September/October)

We have a release version in JIRA already.

Key features

  • Keycloak isolation
  • GCM 3 support (client and server)
  • Improved docker support (e.g. tests/test suite -> Hopefully Travis supports 'docker run' by than ;-))

One could think that going back to JPA annotations is a key feature as well ;-)

UPS 1.2.x (or even 1.3.0) (December 2015)

There is no concrete release version for this, but we have a larger ups-future version in JIRA. The ups-future version/label has a few interesting things, that we may have to do right after 1.2.0

Key features

  • APNs goes HTTP2 (a must)
  • Quiete time for push (aka timezone awareness of devices)
  • Scheduled pushes
  • Proxy server support

UPS 2.0.0 (March-2016)

In October (2015) the WildFly 10 should be released and I'd like to see us adapting this for the 2.0.0 series! Also for a possible release of our 2.0.0 in March 2016, I’d like to stop the 1.x series!

Note: We don't have a release version for JIRA here, but heck! this mail is asking for feedback ;-)

Key features / Core changes

  • UPS based on (public) APIs that are available in WildFly-10
  • looking at using WF feature packs (similar to what Keycloak did, e.g. for layered "product"
  • looking at getting an UPS sub-system
  • Java8 only (as well as making sure works w/ Java9)
  • internal communication fully based on messaging (A-MQ / HornetQ)
  • WildFly-Swarm launcher (aka fat JARs)
  • helps with a more modular system:
  • Modular system (e.g. different “webapps”, like "sender.war", "registration.war", "UI WAR" etc)
  • allows us to play with different platforms for the different “web apps”
  • for a 2.x.y we could see how a vertx microservice (e.g. for the device registration) will behave in the larger system

Other new features, e.g. based on needs and/or requests could be weaved into 2.0.0 or 2.0.x, based on timing. I think the core focus for such a 2.0.0 is more if a technical nature.

Please review this initial draft of a roadmap - once we are all in agreement, it's time to hammer the roadmap into stone, uhm... JIRA :-)

Greetings, Matthias

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment