BlackBerry Forums Support Community               

Closed Thread
 
LinkBack Thread Tools
Old 08-04-2007, 01:02 PM   #1 (permalink)
BlackBerry Extraordinaire
 
rivviepop's Avatar
 
Join Date: Dec 2006
Location: san francisco
Model: 8320
PIN: n/a
Carrier: t-mobile
Posts: 2,166
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default Barry 0.8 (alpha) released

Please Login to Remove!

From the mailing list, posted by Chris Frey:

==============
Hello Barry Fans,

Have you been pining for your latest Barry fix? Have you had the shakes whenever you approach your Linux system with Blackberry in hand? Perhaps you have even been tempted (gasp!) to try the latest CVS to see what fun you're missing?

Well, calm your fragile nerves, for just in the nick of time, version 0.8 is released!

This version includes a lot of new features, including new and improved database support. Brian Edginton has reverse engineered and added support for parsing email records, pin messages, saved email messages, improved contact and calendar parsing, folders, memos, and tasks! Thanks Brian!

This version also includes the first ever, experimental, working release of the OpenSync plugin, supporting calendar and contact items. _Please_ make backups of both your device and your desktop data before playing with this.

The plugin is written for OpenSync version 0.22, and has some limitations, such as no support for recurring appointments, no support for timezones, and poor merge support. The good news is that it is finally possible to sync your Blackberry with applications such as Evolution.

I'm sure there are bugs, so please report them to the list if you find them.

This version includes Debian binary packages for the library, command line tools, and the GUI backup. Fedora 6 RPM's are available too. More binary packages for other systems should appear shortly over time.

Contributors in this release: (in alphabetical order)

Brian Edginton - many database parsing patches
gm2net - byteswap code
Niels de Vos - debian build dependency fix

Thanks everyone for downloading, using, and providing feedback for Barry!

- Chris

Code:
Changelog:
Release: version 0.8 - 2007/08/03
------------------------------------------------------------------------------
2007/08/03
       - moved Interface implementation to usbwrap.cc file
       - added dout debugging messages to usbwrap.cc
       - clarified unhandled packet error message in socket.cc
       - added temporary workaround in opensync-plugin environment's
               Reconnect(), for odd message seen on newer Blackberry
               devices
       - fixing issues with Brian Edginton's MessageRecord patch (2007/06/29)
               - fixed missing size check in message oriented ParseHeader()
               - fixed endian conversion issues (also found one pre-existing
                       endian bug in the process)
               - moved message timestamp converter code to time.cc
       - added Barry version number to opensync plugin name
       - changed maintainer scripts and rpm.spec to use bzip2 instead of gzip
       - added opensync-plugin to configure script build
       - added -S option to btool, to list supported parsers and builders
       - slight change to opensync-plugin/buildgen.sh to cleanup config.h.in~
       - opensync-plugin/README update
       - added opensync-plugin/patches for others who may be building and
               testing the plugin with OpenSync 0.22
       - added debian package build scripts to maintainer/
2007/08/01
       - added entry to doc/TroubleShooting.txt
2007/07/28
       - added doc/TroubleShooting.txt
2007/07/27
       - opensync plugin:
               - fixed bug in vcard.cc that was using the FN field
                       for the broken-down name instead of N
               - added dbId and dbName to DatabaseSyncState
               - added Reconnect() functionality to BarryEnvironment class
                       and moved connect logic out of barry_sync.cc
               - changed the batch commit functionality in barry_sync.cc
                       to single-change-commit.  Why?  Because opensync
                       0.22 groups all batch changes into one group
                       and calls one batch commit function, even if you
                       registered two.  Moving to single change commit
                       mode removes a chunk of unneccessary code
                       from the plugin as well, and can in theory
                       ease memory pressure in the library.
               - added FinishSync() to perform actions needed on successful
                       syncing completion
               - disconnect on successful sync completion, and reconnect,
                       since the device's dirty flags don't seem to
                       be updated until a disconnect occurs.
2007/07/26
       - added ReadDataArray() to data.h, using an istream instead of
               requiring a file
       - added raw data version of BuildField() to record-internal.h
               This is so that btool doesn't add extra null terminators
               to unknown data, when restoring with option -s
       - fixed bugs in r_contact.cc:
               - fixed bug that caused a LastName/FirstName swap
                       if FirstName was empty and you wrote a contact
                       record into the device.... First/Last Name
                       fields are position sensitive, and the code
                       was missing the empty FirstName case on writing
               - fixed bug in BuildFields() and Dump() where they
                       were not updated to handle the new field
                       table added for the postal address changes
                       on 2007/07/20, oops
       - opensync plugin:
               - changed the plugin config file, so it is possible to
                       turn debug output on/off without recompiling
               - moved the standalone Map2Uid() function into
                       the DatabaseSyncState class, and changed the
                       code to produce "contact-#" and "calendar-#"
                       UID strings, instead of just numbers
               - changed default PIN to -1, so that if the user doesn't
                       configure properly, it will fail... this is a
                       safety measure to avoid syncing with different
                       devices and corrupting the cache/idmap...
                       this should be fixed someday, to handle this
                       automatically
                       On second thought... is this right?  Perhaps
                       it is better to fail if the PIN is not what
                       is expected, so a user doesn't accidentally
                       sync the wrong device and lose data.
                       Actions to take on new PIN:
                               - force slow_sync, or
                               - fail
               - incorporated the new VCardConverter code into the
                       main barry_sync.cc plugin code
               - fixed bug that did not clear the devices dirty flags
                       in the case where a sync only read data from it,
                       and didn't write
               - changed PIN error message number to hex
2007/07/20
       - minor wording change in backup GUI prompt: "Backup working..." to
               "Backup in progress..."
       - renamed Contact class's Title field to JobTitle for clarity
       - added record function ParseFieldString(), which properly handles
               strings from the device that have multiple null terminators,
               and changed the record parsing code to use this new function
       - moved FullName() function from ldif.cc to r_contact.cc since it
               is generally useful in areas outside of LDIF processing
       - refactored postal addresses in the Contact record class into
               a new class called PostalAddress
       - renamed Address class in record.h to EmailAddress
       - moved Contact::GetPostalAddress() to record.cc as part of the
               new PostalAddress class and renamed it
               PostalAddress::GetLabel()
       - opensync plugin:
               - refactored vformat helpers into separate base class
                       called vBase
               - added vCard converter class
               - commented out the code that skipped over the adding
                       of empty attribute values and parameters,
                       since VCARD depends on some of this behaviour
               - movified vformat.c:vformat_find_attribute() to take
                       an extra nth argument, in order to search
                       for multiple attributes with the same name...
                       the way this is coded is a bit inefficient...
                       but we're moving away from vformat when we move
                       to OpenSync 0.3x / 0.40, so this is just temporary
                       pain
2007/07/19
       - added SUBSYSTEM=="usb_device" to example udev rules, in order
               to avoid running bcharge for each endpoint that is
               added by udev, when first plugged in.  Running bcharge
               back-to-back multiple times can crash some
               Blackberries.
2007/07/14
       - opensync plugin:
               - fixed ID mapping bug in the case of a non-numeric UID
                       from syncing external -> Barry, and then the
                       new Barry ID would look like a new change
                       when syncing back from Barry -> external.
               - added support for slow sync
               - added clear() to idmap class
               - added vformat attr parameter extraction class
               - added more trace logging during vformat/Barry conversions
               - added Notification time support
               - handled "all day" vformat special case, when DTEND
                       does not exist in a vformat data block
       - changed the min1900_t time conversion functions to handle
               the 0xffffffff special case, when notifications
               are turned off on a calendar event (src/time.cc)
       - also made the calendar data dump output clearer for
               disabled timestamps, and added debug output
               for the raw min1900 value, in case there are more
               special cases in the future
2007/07/13
       - fixed null pointer access in opensync's HasMultipleVEvents()
2007/07/12
       - upper management directive: revert all OpenSync 0.3x changes
               and proceed with OpenSync 0.22.  Reverting the
               opensync-plugin/src tree to Barry 0.7 status.
2007/07/06
       - reorganized exception and trace code in opensync plugin
       - added XmlToCalendar() function, based on unfinished opensync
               library API that is not yet finished... will be
               committed to opensync svn tree when complete
       - added OSyncXMLField logger to plugin trace class
2007/06/29
       - applied email MessageRecord patch from Brian Edginton (thanks!)
       - updated Message::Dump() to output more valid mbox data...
               the goal is to be able to do:
                       btool -d "Messages" > email.mbox
                       mutt -f email.mbox
       - changed some TODO's to FIXME's to keep it grep-consistent
       - applied Folder support patch from Brian Edginton
       - fixed pedantic compile warnings, and changed order in src/Makefile.am
       - removed unneeded cast in src/r_folder.cc
2007/06/28
       - minor adjustment to ctags building in buildgen.sh
       - applied patch from Brian Edginton for better boost detection
               in configure.ac
       - added boost usage message to btool -h output
2007/06/21
       - more porting of OpenSync module to 0.30
       - added ctags build for opensync source tree to buildgen.sh
2007/06/14
       - changed PKG_CONFIG_PATH setting in rpm script, so that systems
               like SuSE that have an extensive PKG_CONFIG_PATH
               in general use will not break on build
       - added PKG_CONFIG_PATH to debian script too, just in case :-)
       - added debian/changelog to doc/ReleaseChecklist.txt
       - added comment to rpm/barry.spec regarding SuSE RPM builds
2007/06/08
       - applied patch from Niels de Vos fixing debian package build
               dependency
       - applied Brian Edginton's Saved Email Messages patch
       - updated r_saved_messages.cc comment to match header
       - added GetRecType()/GetUniqueId() to r_saved_messages.h, since
               SetIds() is already there
       - removed Address version of operator<<() from message related headers
               and moved into record.h
       - added std::hex to message related dumps, and changed output to
               be more mbox-like
       - updated doc/CodingStyle.txt to cover switch() statements
       - opensync compiles again, with 0.30!  (not functional yet)
               - moving closer to more modular and reusable plugin functions
       - updated release checklist for opensync version number
2007/06/07
       - added doc/CodingStyle.txt... preliminary version
2007/06/06
       - applied Brian Edginton's PIN message patch
       - changes to PIN message patch:
               - fixed missing backslash in src/Makefile.am
               - fixed tab alignment throughout
               - removed typedef from Address struct
               - added clear() to Address... might as well, if it it is
                       going to be a standalone type
               - fixed missing comma in PINMessageFieldLinks table
               - changed MessageRecordId in PINMessage to load from a new
                       uint32_t field in CommonField, instead of piggy
                       backing on a field for other use
       - did some testing and found that PINMessage's MessageRecordId
               is the same as the RecordId given through the SetIds()
               API... but these Id's are duplicated in the protocol...
               RecordId is stored in the protocol header, while
               MessageRecordId is stored in the record it self as
               a common field... added RecType and RecordId to
               PIN Message so that we store both of these
       - updated AUTHORS
2007/05/27
       - added item to gui/TODO
       - applied Brian Edginton's s11n-boost.h patch
2007/05/25
       - renamed template values to more consistent naming scheme
       - applied memos and tasks patch from Brian Edginton, slightly
               modified to split into the new separate files system
       - changes to memos and tasks classes:
               - reformatted the code to match coding style
                       (come on Brian) :-)
               - added copyright notice
               - changed class to singular (Memo, not Memos)
               - placed in Barry namespace
               - added #ifdef header protectors
               - added new files to Makefile.am
               - added new r_*.h headers to record.h
       - added support for Memos and Tasks to tools/btool.cc, based on
               Brian Edginton's patch
               (currently commented out, for Boost library reasons):
       - added doc/CommitPolicy.txt
       - updated AUTHORS
2007/05/24
       - added ctags generation to buildgen.sh
       - applied record.{h,cc} fix patch from Brian Edginton
               - ClassFlag
               - FreeBusyFlag
               - Clear() fixes
       - fixed broken formatting in above patch
       - refactored record parser classes into separate files for each
       - changed the ConvertHtoB<> template to inline, as it caused
               linker errors with the new file layout
2007/05/17
       - fixed bug in Debian packaging that put util commands in
               /bin and /sbin instead of /usr/bin and /usr/sbin
       - commited byteswap.h replacement code from gm2net
       - backup gui:
               - removed unneeded debug messages on stdout
               - changed the default for debug output to "off"
                       and added a command line option to turn
                       it on if necessary  (--debug-output)
               - command line option --help now also works
       - fixed bug in Calendar class where it didn't initialize
               RecType properly... and cleaned up other RecType
               code to use the GetDefaultRecType() functions,
               localizing the constants in one place
2007/05/11
       - applied patches from Brian Edginton, parsing more
               fields in Contact and Calendar records
       - added Brian Edginton to AUTHORS
       - reformatted record.{h,cc} to match the rest of the code,
               removed commented out code, and removed mention of
               Outlook from the comments.
       - updated udev/10-blackberry.rules.Debian for Debian Etch
       - updated debian/rules to use new udev rules file
       - removed debian/postinst, as stable versions of Debian now
               have a recent udev, and don't need the special handling
       - updated Debian build scripts to build separate packages:
               libbarry
               libbarry-dev
               barry-util
               barrybackup-gui
       - added menu support to Debian barrybackup-gui package
       - made the buttons bigger in the backup GUI, as they were too
               small on Debian Etch
       - opensync plugin:
               - more progress in porting to opensync 0.30, heavily
                       based on the example plugin in the opensync
                       svn tree...  this is a work in progress, and so far
                       is incomplete
2007/05/04
       - opensync plugin:
               - partial porting to opensync 0.30 (in progress!)
               - fixed bug in sync_done where it reported context error
                       and then success afterward
       - checking in new INSTALL files based on Etch's autoconf run
       - added item to gui's todo list
       - bumped version numbers to 0.8 in:
               - configure.ac
               - src/Makefile.am
               - src/version.cc
               - gui/src/BackupWindow.cc (about dialog)
               - src/Doxygen
               - rpm/barry*.spec
__________________
[ Linux & BlackBerry ] http://www.blackberryforums.com/linux-users-corner/
Offline  
Old 08-04-2007, 09:42 PM   #2 (permalink)
BlackBerry God
 
LunkHead's Avatar
 
Join Date: Jan 2005
Location: Here
Model: 850
OS: 0.0.00001
PIN: kie swear
Carrier: USPS Priority
Posts: 10,992
Post Thanks: 160
Thanked 158 Times in 59 Posts
Default

Yes!!!!! Thanks for the post rivvie!!! I hate evolution but might have to suffer if the sync works!!!! :woot: :woot:

Kris
Offline  
Old 08-30-2007, 03:53 PM   #3 (permalink)
Knows Where the Search Button Is
 
xlancealotx's Avatar
 
Join Date: May 2007
Location: shopping cart
Model: 8310
PIN: N/A
Carrier: att
Posts: 25
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default ok .... now what?

Hey all. . . excitedly reading about this, got the packages, and after dependency after dependency, things are now intstalled, am I missing anything;

rpm -qa |grep barry
libbarry-devel-0.8-1
barry-gui-0.8-1
libbarry-0.8-1
barry-util-0.8-1

the only barry<tab> is barrybackup which pops upa nice box, closes quick to show an error;
(-16, Device or resource busy): Probe SetConfiguration failed

messages shows;
Aug 30 16:27:51 neo kernel: usb 2-2: usbfs: interface 1 claimed by usb-storage while 'barrybackup' sets config #1
Aug 30 16:46:45 neo last message repeated 3 times

I see people (at least I think) have gotten a sync with evo, and it looks like this is on the right track, so if anyone knows about the above error, how to fix, etc. feel free to post.

Right now it's syncing with the widows machine -> yahoo which does work a bit ... but ... so ... slow ....

thanks ...
Offline  
Old 08-30-2007, 06:54 PM   #4 (permalink)
BlackBerry Extraordinaire
 
rivviepop's Avatar
 
Join Date: Dec 2006
Location: san francisco
Model: 8320
PIN: n/a
Carrier: t-mobile
Posts: 2,166
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

Type "rmmod usb_storage" as root before starting any of the Barry tools, that module eats the USB interface so you have to free up the connection.
__________________
[ Linux & BlackBerry ] http://www.blackberryforums.com/linux-users-corner/
Offline  
Old 09-04-2007, 01:08 PM   #5 (permalink)
Knows Where the Search Button Is
 
xlancealotx's Avatar
 
Join Date: May 2007
Location: shopping cart
Model: 8310
PIN: N/A
Carrier: att
Posts: 25
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

Cool, that worked perfect so now I have a way to backup the bb.

Now is there any documented or known "how to" to sync with evo? I am currently sycing to yahoo with the windows software so I can access things via browser on my linux machine, but yahoo is really slow so a sync to evo would be perfect.

Thanks again.

lr
Offline  
Old 09-05-2007, 04:50 PM   #6 (permalink)
Knows Where the Search Button Is
 
Join Date: Sep 2007
Model: 8830
PIN: N/A
Carrier: Sprint
Posts: 21
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

Is there even howto's for using the barry tools? I have installed them and I am not sure where to start.

I plugged in the bb to my usb cable and got the typlical error message indicating there is not enough current so perhaps I need to run barry first?

Thanks for your patience...
Offline  
Old 09-05-2007, 05:30 PM   #7 (permalink)
BlackBerry Extraordinaire
 
rivviepop's Avatar
 
Join Date: Dec 2006
Location: san francisco
Model: 8320
PIN: n/a
Carrier: t-mobile
Posts: 2,166
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

You folks want to join the 'barry-devel' list on Sourceforge, it's active and the authors (Chris Frey et al.) are very responsive.

https://lists.sourceforge.net/lists/...fo/barry-devel
__________________
[ Linux & BlackBerry ] http://www.blackberryforums.com/linux-users-corner/
Offline  
Closed Thread


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On





Copyright 2004-2014 BlackBerryForums.com.
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.