Tomdroid 0.2 "this is all wrong"

Fix show-stoppers problems from the 0.1 release that I didn't expect (since I was the only user). Move on with the features.

Milestone information

Project:
Tomdroid
Series:
stable
Version:
0.2
Code name:
this is all wrong
Released:
2009-06-24  
Registrant:
Olivier Bilodeau
Release registered:
2009-06-24
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
4 Olivier Bilodeau
Blueprints:
2 Implemented
Bugs:
4 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon tomdroid-0.2.0.apk (md5) Android package (click here to install Tomdroid from android's web browser) 1,417
last downloaded 20 weeks ago
download icon tomdroid-0.2.0.tar.gz (md5) Android installable package + README 144
last downloaded 23 weeks ago
download icon tomdroid-0.2.0.zip (md5) Android installable package + README (zip version) 203
last downloaded 10 weeks ago
download icon tomdroid-src-0.2.0.tar.gz (md5) Source files 212
last downloaded 3 weeks ago
download icon README (md5) README 384
last downloaded 5 weeks ago
Total downloads: 2,360

Release notes 

For more details and developer visible changes see the ChangeLog

Version 0.2.0 - this is all wrong
Development is done using SDK 1.5 but the application is compatible with 1.x
* Performance improvements (on my ADP1 ~50 notes loads twice as fast)
* Responsiveness improvements: you can now see the screen updating the note list when it's parsing notes and interact with it
* Usability/UI improvements (#364851, BenoƮt Garret)
* Text no longer changes color when scrolling (#364425)
* Fixed concurrency crashes (#389437)
* Messages are now clearer when there are no notes in the tomdroid/ folder vs when the folder doesn't exist
* Improved usability of the URL input dialog to load a Web note
* Better error reporting to user when loading a note from the Web
* Better Android lifecycle management
* Developer related fixes (#364770)

Changelog 

View the full changelog

=== 0.2.0 ===
2009-06-24 Olivier Bilodeau <email address hidden>

 * NEWS: [134] Updated NEWS

 * doc/user/README: Updated README for 0.2.0 and fixed a small error

2009-06-22 Olivier Bilodeau <email address hidden>

 * res/layout/main.xml,
 * res/layout/main_list_item.xml,
 * res/layout/note_view.xml: [129] Merged branch
 lp:~benoit.garret/tomdroid/ui-fixes. Fixes bug #364851;
 https://launchpad.net/bugs/364851 fixed

 2009-06-16 Benoit Garret <email address hidden>

  * res/layout/note_view.xml: [98.1.3] Add a 10dip padding around
  the note.

  * res/layout/main.xml,
  * res/layout/main_list_item.xml: [98.1.2] Make the whole item
  area clickable and not just the text.

  * res/layout/main_list_item.xml: [98.1.1] Add a 10dip padding to
  the main list entries. This should help clicking them.

2009-06-22 Olivier Bilodeau <email address hidden>

 * AndroidManifest.xml: [127] Specifying minimum SDK version (Android
 1.0 for now) and bumped version to 0.2.0rc1

2009-06-21 Olivier Bilodeau <email address hidden>

 * res/values/strings.xml: [123] Updated opening warning Dialog's text.

 Removed lifecycle problems paragraph, added inability to edit notes
 and slow startup. Also asked for help.

 * src/org/tomdroid/NoteCollection.java: [120] NoteCollection's
 findNoteFromTitle(...) and buildNoteLinkifyPattern(...) are now
 synchronized methods. Fixes bug #389437: Concurrency crash;
 https://launchpad.net/bugs/389437 fixed

 * src/org/tomdroid/xml/NoteHandler.java: [117] No last-change-date
 parsing.

 Provides performance improvement and we were not using it yet. Will be
 reactivated in the future.

2009-06-21 Olivier Bilodeau <email address hidden>

 * doc/dev/performance/benchmarks.txt: Modified.
 * doc/dev/threading-improvement: Renamed to doc/dev/performance.
 [116] Moved threading-improvement dev notes to performance.

 Since the threading-improvement branch as been merged and I now track
 general performance/responsiveness in these files along with helper
 patches. I also reversed the order of the benchmarks.txt file (newer
 on top) this explains the big diff.

2009-06-21 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/util/AsyncNoteLoaderAndParser.java: [115] Hardcoded
 8K buffer in AsyncNoteLoaderAndParser's BufferedReader because of all
 the logcat output recommending it. The performance improvement is most
 likely only related to the diminution of console ouptut.

2009-06-21 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/Note.java,
 * src/org/tomdroid/ui/ViewNote.java,
 * src/org/tomdroid/util/NoteBuilder.java: Better error reporting to the
 user when loading a note from the web.

 * res/layout/load_web_note_dialog.xml: [111] Pre-fill
 LoadWebNoteDialog's text input dialog with http:// since you always
 have to retype it anyways.

 * res/layout/load_web_note_dialog.xml: [110] LoadWebNoteDialog text
 input is now a one liner input. Pressing enter in it gives focus to
 the Ok button.

2009-06-21 Olivier Bilodeau <email address hidden>

 * default.properties: Added.
 * .bzrignore,
 * .classpath: Modified.

 [107] Updated project metadata for Android SDK 1.5

2009-06-17 Olivier Bilodeau <email address hidden>

 * res/layout/note_view.xml: Hardcoded textcolor in note-view activity.
 Fixes bug #364425: Text color becomes grey when dragging;
 https://launchpad.net/bugs/364425 fixed

2009-06-17 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/ui/Tomdroid.java: Saving warning dialog state (shown
 or not).

 Implemented proper lifecycle mechanism to save dialog state: override
 onSaveInstanceState(bundle) and onCreate(bundle) for the Tomdroid
 activity.

 * .bzrignore: sdcard.img.private is now ignored from bzr. Feel free to
 have your own when developping.

2009-06-02 Olivier Bilodeau <email address hidden>

 * AndroidManifest.xml: app lifecycle fix

 ui.Tomdroid (note list) is now in singleTop mode meaning that it
 should always be at the top of a task stack. It think this reflects
 the usage pattern the best. Updated TODO accordingly

2009-05-21 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/util/AsyncNoteLoaderAndParser.java: For now, I think
 that what makes most sense is to run the pool at one thread to keep the
 UI as responsive as possible. I might come back to this value in the
 future though.

 * doc/dev/threading-improvement/benchmarks.txt: Added new tests results

 * src/org/tomdroid/util/AsyncNoteLoaderAndParser.java: oops.. left
 behind a @Override statement that should not be there when using Java 5
 (vs java 6) build specs: removed (mistake when I updated from trunk)

2009-05-20 Olivier Bilodeau <email address hidden>

 * doc/dev/TODO,
 * src/org/tomdroid/ui/ViewNote.java,
 * src/org/tomdroid/util/NoteBuilder.java: Viewing a note from the Web
 works again.

 Proper wrapping in NoteBuilder to convert url.getContent to a proper
 InputSource object to be consumed by the xml parsing.
 Removed related (obsoleted) TODO task
 Removed FIXME comment in ViewNote

2009-05-19 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/Note.java,
 * src/org/tomdroid/NoteCollection.java,
 * src/org/tomdroid/ui/Tomdroid.java,
 * src/org/tomdroid/util/AsyncNoteLoaderAndParser.java:
 AsyncNoteLoaderAndParser now notifies main UI if there are no notes to
 be parsed.

 Transformed AsyncNoteLoaderAndParser from a runnable to a normal class
 (listing files is not time consuming enough for the added complexity).
 It now sends an empty message to ui.Tomdroid if no notes are in the
 tomdroid/ folder.
 Added NO_NOTES msg type (int constant) to Note
 NoteCollection uses modified AsyncNoteLoaderAndParser

 * doc/dev/TODO: Updated developer TODO tasks

 * doc/dev/threading-improvement/benchmarks.txt: Updated benchmark
 results with other test I've made

2009-05-06 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/NoteCollection.java,
 * src/org/tomdroid/util/AsyncNoteLoaderAndParser.java,
 * src/org/tomdroid/util/NoteBuilder.java: NoteCollection is now using
 AsyncNoteLoaderAndParser instead of looping on NoteBuilder. Removed the
 deprecated NoteFilter.

 AsyncNoteLoaderAndParser fully implemented: it loops through the files
 and launch worker threads using a thread pool who does the loading and
 parsing of a note.
 Added a comment to NoteBuilder fix code duplication some day.

2009-04-30 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/dao,
 * src/org/tomdroid/dao/NoteDAO.java,
 * src/org/tomdroid/dao/NoteNetworkDAOImpl.java,
 * src/org/tomdroid/dao/mock,
 * src/org/tomdroid/dao/mock/NoteNetworkDAOMock.java: Removed.

 No longer used.

2009-04-30 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/Note.java: Simplified the Note class since we no
 longer uses fetchNoteFromWebAsync() and its handling mechanism.

 * src/org/tomdroid/NoteCollection.java,
 * src/org/tomdroid/ui/ViewNote.java,
 * src/org/tomdroid/util/NoteBuilder.java: Web notes are now loaded
 through NoteBuilder instead of using a DAO

 NoteBuilder no longer supports setNoteFilename() but you should use
 setInputSource() instead. This is a more generic abstraction to allow
 loading from the web or locally. Modified build() accordingly and
 callers.
 Ported ViewNote to using NoteBuilder instead of the DAO

2009-04-29 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/Note.java,
 * src/org/tomdroid/NoteCollection.java: Modified.

 * src/org/tomdroid/dao/NoteFileSystemDAOImpl.java: Renamed to
   src/org/tomdroid/util/NoteBuilder.java and modified.

 Moved over the parsing / file loading responsability into NoteBuilder
 (was NoteFileSystemDAOImpl). We bypass the double message sent from the
 DAO to the Note to Tomdroid and use instead: NoteBuilder send a message
 straight to Tomdroid
 Details:
 - Note can now be instanciated with no parameters
 - Import cleaned in Note
 - Removed the fetchAndParseNoteFromFileSystemAsync() method of Note
 - NoteCollection now uses NoteBuilder to create a Note instead of
 instanciating a note and asking it to fetch itself
 - Complete refactoring of NoteFileSystemDAOImpl into NoteBuilder

2009-04-28 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/dao/NoteFileSystemDAOImpl.java: Clean dead code and
 organized imports. Pre-refactoring steps.

 Updating copyrights

2009-04-27 Olivier Bilodeau <email address hidden>

 * doc/dev/threading-improvement/benchmarks.txt: Added some benchmark
 information gathered.

 * src/org/tomdroid/dao/NoteFileSystemDAOImpl.java: No more temporary
 string in NoteFileSystemDAOImpl. The InputSource is going straight into
 the xml parsing.

2009-04-24 Michael Fletcher <email address hidden>

 * .settings,
 * .settings/org.eclipse.jdt.core.prefs,
 * .settings/org.eclipse.jdt.ui.prefs: Added.

 * src/org/tomdroid/dao/NoteFileSystemDAOImpl.java,
 * src/org/tomdroid/dao/NoteNetworkDAOImpl.java,
 * src/org/tomdroid/dao/mock/NoteNetworkDAOMock.java,
 * src/org/tomdroid/ui/Tomdroid.java,
 * src/org/tomdroid/ui/ViewNote.java: Modified.

 Default eclipse compiler settings set at Java 5. Removed @override on
 interface methods implementation (Java 6 vs Java 5 @override behavior).
 Fixes #364770; https://launchpad.net/bugs/364770 fixed

2009-04-22 Olivier Bilodeau <email address hidden>

 * doc/dev/threading-improvement/enable-traceview-r84.patch: Added.

 Added a patch that add calls to generate Traceview dump file
 (applies cleanly on r84 of threading-improvements branch)

2009-04-21 Olivier Bilodeau <email address hidden>

 * src/org/tomdroid/Note.java,
 * src/org/tomdroid/dao/NoteFileSystemDAOImpl.java: Moved xml parsing
 code out from the Note into the NoteDAO to see if it could be improved
 by threading code (warning: ugly)

2009-04-21 Olivier Bilodeau <email address hidden>

 * doc/dev/threading-improvement,
 * doc/dev/threading-improvement/benchmark-r84.patch,
 * doc/dev/threading-improvement/benchmarks.txt: Added.

 Started to do some benchmarks of the current code. Then I will apply
 changes and compare if performance is better or worse.

2 blueprints and 4 bugs targeted

Blueprint Priority Assignee Delivery
Implement Android lifecycle methods on all activities Implement Android lifecycle methods on all activities 4 High Olivier Bilodeau  11 Implemented
The way that threading works must be improved The way that threading works must be improved 4 High Olivier Bilodeau  11 Implemented
Bug report Importance Assignee Status
389437 #389437 Concurrency crash 3 High   10 Fix Released
364425 #364425 Text Colour Becomes Grey When Dragging 4 Medium Olivier Bilodeau  10 Fix Released
364851 #364851 Usability problems on real device 4 Medium   10 Fix Released
364770 #364770 No Compiler Settings 5 Low Olivier Bilodeau  10 Fix Released
This milestone contains Public information
Everyone can see this information.