- added doxygen.log
[barry.git] / Changelog
blob94b5a04ab5431fd8fe8f9ba7ca60a700286318d4
1 Release: version 0.0.2 - 2005/??/??
2 ------------------------------------------------------------------------------
3 2005/12/08
4         - fixed potential casting / pointer bug in controller.cc
5         - added builder.h, to support uploading
6         - minor comment fixes in parser.h
7         - added preliminary Contact protocol record building support
8         - fixed field order bug in ContactRecord protocol struct
9         - Contact record.h class now saves unknown Group Link field,
10                 for later saving
11 2005/12/07
12         - added -fno-strict-aliasing to compiler flags so gcc-4.0.x won't
13                 optimize away protocol struct casts
14                 see: 
15                 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25235
16                 http://mail-index.netbsd.org/tech-kern/2003/08/11/0001.html
17                 http://groups.google.ca/group/comp.lang.c++.moderated/ \
18                         browse_thread/thread/e7bf096832526f8e/5714701b \
19                         02a2a3cc?hl=en#5714701b02a2a3cc
20         - changed headers so that any low level protocol-specific sizes and
21                 structs are completely hidden in the library...
22                 this adds library-only header: protostructs.h
24 Release: version 0.0.1 - 2005/11/25
25 ------------------------------------------------------------------------------
26 2005/11/25
27         - added barry.h for documentation purposes and application usage
28         - updated README for release
29         - renamed SBError exception class to BError
30         - updated Doxyfile to version 1.4.5
31         - added more doxygen comments
32 2005/11/24
33         - added conversion routines (and tests) between time_t and min1900_t
34         - added -v option to btool to dynamically control protocol dumping
35         - removed duplicated database database table display in controller.cc
36         - minor spelling corrections
37         - added copyright to usbwrap.{h,cc} as per earlier meeting
38         - added support for Old protocol Calendar entries
39 2005/11/20
40         - added legal.txt, to save typing when adding new source files
41         - ignore test-base64 file (cvsignore)
42         - added contact-to-ldif generation, and updated supporting code
43         - added argument to btool to support contact-to-ldif operation
44         - added Contact::GetPostalAddress()
45         - added README documentation in preparation for future release
46 2005/11/19
47         - added parser.{h,cc} virtual wrapper to generalize LoadDatabase()
48         - added code to socket.cc's Packet() command to re-receive on
49                 reception of empty packets... this seems to be a signal
50                 from the device that it needs more time for long transfers
51                 Current limit: 10 blank packets before exception is thrown
52                 Observed maximum blank count: 1
53         - added MessageRecord and OldMessageRecord to protocol.h
54         - changed common record field structs to one CommonField struct
55         - increased default USB timeout to 10 seconds (some loaded devices
56                 seem to need more time...)
57         - reorganized record.{h,cc} to try to reduce the code duplication
58         - record.h classes now "know" the sizes of their corresponding
59                 protocol structs... this may cause trouble down the line
60                 with Python, if used(?)
61         - added Message class for Email records
62         - removed the "Get*" database functions and replaced with
63                 general LoadDatabase() call, which loads any database
64                 available, and parses it with a Parser object
65         - added GetDBID() for searching for database numbers via name
66         - added test code to retrieve and display all email
67         - cleaned up comments
68         - renamed blackberry.{h,cc} to controller.{h,cc}
69         - renamed bbtool.cc to btool.cc
70         - added Makefile.conf
71         - added copyright notices to source files
72         - added COPYING file with GPL
73         - put parser in Barry namespace, and added auto_ptr-like mode for
74                 store object pointers
75         - added doxygen docs
76         - added header comments to convo.awk script
77         - removed Test() function in Controller object, and made class
78                 better suited to its general API purpose
79         - changed OpenMode() so it loads command table and DBDB... it is now
80                 a public API function
81         - moved Controller test code to btool.cc and made tool more
82                 generically useful... can now download any DB by name on
83                 the command line
84         - added mode checks to Controller
85         - added -t and -d command line options to btool
86         - added base64 routines from John Walker / Fourmilab and Citadel/UX
87         - converted base64 routines into an API, instead of hardcoded
88                 file based
89 2005/11/18
90         - changed project name to Barry, including namespaces
91         - renamed sbcommon.* to common.*
92         - increased USB default timeout to 2 seconds
93         - fixed formatting bug in Data operator<< output
94         - cleaned up the protocol packet structs, getting rid of the
95                 confusing param/simple split... param is now the tableCmd
96                 from the Command Table
97         - moved protocol structs from record.h to protocol.h
98         - added support for older version of the USB protocol, which matches
99                 the Cassis spec more closely
100         - fixed the hardcoded offsets in blackberry.cc's protocol parsing
101         - fixed Socket::Close() so on error, socket flags are reset.
102                 This stops Close() from being called twice on exception
103                 destructors
104 2005/11/17
105         - added Doxyfile to the project
106         - tuned Makefile
107         - added mode selection support to Blackberry class (RIM Desktop,
108                 RIM Bypass, and RIM_JavaLoader)
109                 Mode selection governs which socket is used in subsequent
110                 data transfers.
111         - added Command Table parsing and protocol support
112                 Blackberry class, and CommandTable record class
113         - added Database database parsing and protocol support
114                 Blackberry class and DatabaseDatabase record class
115         - added Address book retrieval support - dumps data to stdout for now
116         - fixed bug in CopyOnWrite mode in Data class, where could allocate
117                 less buffer than data copied
118         - added "easy exception" debug output macro
119         - fixed minor spelling error in protocol.cc
120         - fixed ModeSelectCommand protocol structure - it is not a parameter
121                 command, but uses the unknown slots for socket and flag
122                 data
123         - removed hardcoded socket numbers from protocol.h
124         - fixed bug in socket.cc:Open() where packet size was not properly
125                 saved
126         - implemented socket::Close()
127         - fixed sequence number checks, so it is reset properly on socket 0
128         - added Socket::NextRecord() for multiple record data transfers
129         - fixed input handling bug in translate.cc
130 2005/11/11
131         - added .cvsignore files to project
132         - added README notes to document the source architecture
133         - added dbsetup data script, which shows how to get into database
134                 mode, using the RIM Desktop mode, and open a socket
135         - added blackberry.{h,cc} class
136         - added command line parameters to bbtool.cc
137                 -l = list only
138                 -p = specify pin of blackberry device
139         - added blackberry test code in bbtool.cc - debugging the initial
140                 opening protocol: sockets, modes, etc... see dbsetup for
141                 results
142         - added copy-on-write functionality to Data class, so it can be used
143                 with plain data buffers with little performance impact
144         - added eout() and ddout() debugging - to separate:
145                 - regular debug output
146                 - exception debug output (should probably be logged to
147                         syslog someday, and never turned off)
148                 - raw data dump output
149         - changed errno SBError exception handler to try to decode the error
150                 numbers into english (limited success)
151         - fixed probe and socket USB Bulk message handling, so they don't
152                 use PollCompletions(), but use IO::Wait() (libusb_io_wait())
153         - added common packet size checker in protocol.cc
154         - fixed unpacked protocol packet structs... using gcc's
155                 __attribute__ ((packed)) ... see protocol.h
156         - added ModeSelectCommand structure (protocol.h)
157         - finished Socket::Open() call  (Close() not yet implemented)
158         - moved Socket::Send/Receive() out of private, as they can be used
159                 for socket 0 operations.
160         - cleaned up pointer management with macros:
161                 MAKE_PACKET()
162                 COMMAND()
163                 IS_COMMAND()
164         - added IO::Wait() and IO::Cancel() to correspond with libusb API
165         - added datadumping in usbwrap for easy protocol capture
166         - added preliminary record.{h,cc} classes
167         - added Contact record parsing, and test code
168 2005/10/20
169         - syncberry tree started