This set of pages is primarily focused on assisting new Ubuntu Touch oFono developers, packagers, testers, and bug triagers.
The version of ofono in 13.10 is based on ofono 1.12.
We currently host Ubuntu's version of ofono/rilmodem at github ( https://github.com/rilmodem/ofono ) for ease of collaboration with upstream, and other projects using this code. We also maintain an auto-import bzr branch ( lp:~phablet-team/ofono/rilmodem ) that mirrors the github branch on Launchpad.
The packaging for ofono is currently maintained in bzr ( lp:~phablet-team/ofono/ubuntu ). This branch is a merge of the source code plus the Debian packaging, and is used to land new versions of ofono in the current development release of Ubuntu.
This branch is also covered by the Ubuntu CI infrastructure, so it can be automatically built, tested and merged after proper approving in the merge request itself (top approval by people with write permission).
Patches can be submitted by creating pull requests against the master branch of rilmodem/ofono. Before submitting, please understand that changes to this repository must be tested to ensure no regressions are introduced. For rilmodem-related changes, it's recommended that they be tested on at least one of the Nexus-based phones currently supported by Ubuntu Touch.
Also, please review oFono's top-level HACKING document, especially the section about Submitting Patches. One point not mentioned in this document is that ofono commit messages should be prefixed with the directory name involved ( eg. rilmodem:, atmodem:, plugins:, ... ) or build: for top-level changes.
Landing in Ubuntu
The ofono team uses the phone CI landing process:
When a silo is allocated, it is the responsibility of the lander(s) specified in the spreadsheet to oversee testing of the silo, and when appropriate change the Testing Status column to indicate testing has passed ( by one or more developers ). If QA testing isn't required, then this triggers publishing. If QA testing is required, the silo is published when the assigned QA engineer marks the silo as tested.
Silos should be tested against all supported devices. Each time a silo is tested, please use the ofono merge proposal for recording test pass comments. Be sure to include channel, image #, device, and SIM(s) used.
Silo testing should always include the basic tests as defined in the oFono test plan, dialer and messaging app autopilots tests, and one or applicable sub-sections of the test plan. For instance, if a bug has been fixed in the SIM subsystem, running the SIM tests would be required. In the same instance, running the call forwarding tests for a change to SIM code makes no sense.
So testing comments should look something like:
ubuntu-touch/ubuntu-rtm/14.09-proposed, #167, krillin Ran basic, auto-pilot, and SIM tests from the ofono test plan. Also confirmed bug fix by following steps in bug #XXXXXXX. <any bugs filed during testing, other random notes/observations>
Image / Update Testing
When a candidate image is being vetted, the entire ofono test plan should be executed on each supported device, and a test report added to the oFono Test Reports page.
When OTA updates are vetted, the same rules that apply to silo testing should be followed.