In the last few years, Smack development, has gained again some
momentum. I am very happy about this, but it's not where it could and
should be. I'd like to start a discussion about future Smack and
aSmack, the Android port of Smack, development.
The current state of Smack development makes it not easy to get
patches originated from the Smack or aSmack community into a good
shape and finally into Smack. In the past, there was a lot of code,
and hence interested in Smack, that didn't made it into Smack. Part of
which is due the differences of the two target platforms. It's time
that the development of aSmack and Smack is unified again, reducing
the effort for aSmack and also giving more ressources to Smack. After
all, aSmack is the driving force behind Smack development, given the
fact that nearly every contribution to Smack of the last 3 years
orignated from aSmack.
A modular, modern build-system based, Smack, that targets Android and
Java, should be our goal. Modular in a sense that the user can select
the modules he needs, for example Core-IM with Service Discovery,
XHTML-IM and MUC, nothing else. Merging aSmack back into Smack,
unifying the build process, would be a win-win situation for every
single Smack user.
Google Summer of Code 2014 is coming, and I'd like to take that as
chance to get the project going. There are two important issues,
namely the development process and the build system, that we need to
tackle in two phases.
First, Smack's VCS needs to be migrated to git. Ideally we would
release Smack 4.0 before that is done, so that the migration only
needs to take care of a single branch, 'trunk' in that case. Also a
proper review process needs to be established: At least another
developer should review commits before they get committed into the
master branch.
If we get accepted, modernizing and modularizing the build system will
be part of a GSOC 2014 project. Application starts 2014-Feb-03. You
can find the current wording of the application in DOC-2678.
So, I'd like to ask you, the Smack community for input about this. But
mostly I'd like to hear the opinion of my fellow Smack developer Robin
Collier about his thoughts.