blob: 208e017e3d2d1c2f0792cee4235db7e4817f31c9 [file] [log] [blame]
Benny Prijono9033e312005-11-21 02:08:39 +00001RELEASE NOTES
2
3Version 0.3-pre4
4Nov 13th, 2005
5====================================
6
7PJLIB
8 - Correct error reporting in the whole library. No more vague -1 errors!
9 - New super portable socket abstraction.
10 - Other headers were made super portable too.
11 - Ioqueue supports multiple pending operations in a single socket!
12 - No more floating point.
13 - Ported to new platforms:
14 - i386/linux kernel (!)
15 - Sparc/Solaris
16 - Alpha/Linux
17
18PJSIP
19 - Correct error reporting in the whole library. No more -1 errors!
20 - Rewrote event, now much more readable.
21 - Per object tracing.
22
23
24Version 0.2.9 - 2005/06/19
25====================================
26Core:
27 - Moved authentication stuff to core.
28SIMPLE:
29 - Initial implementation of Event framework (SUBSCRIBE/NOTIFY)
30 - Initial implementation of Presence
31 - Tidying up here and there.
32
33Version 0.2.8.5 - 2005/06/05
34====================================
35Core:
36 - Tidying up sip_msg.h (no need to export clone/shallow_clone/print API
37 for headers).
38 - Endpoint now can respond with 501/Not Supported if incoming request is
39 not handled by any modules.
40 - Endpoint also supports Allow header now.
41 - Changed transport names to capital letters (thanks ...)
42 - Fixed bug with locking in select() ioqueue.
43 - Add status phrase for >= 700 status codes.
44
45pjsua:
46 - Verify URL in arguments to prevent crash.
47 - Can read commands from config file.
48 - Now has buddy list and can send IM!
49
50SIMPLE:
51 - Instant Messaging support!
52
53MEDIA:
54 - CLOSING SEQUENCE IS NOT PROPER!!! SOMETIMES THREAD IS DEADLOCKED,
55 OR DSOUND IS NOT CLOSED PROPERLY!!!
56
57Version 0.2.8 - 2005/05/28
58====================================
59- Simple STUN client support
60 SIP UDP port and media RTP/RTCP ports are now STUN aware.
61- Major changed in I/O queue, now callback is used.
62 Callback is better because multiple libraries can register to single I/O queue.
63 It was not possible with previous implementation, because the function which does
64 polling needs to understand what to do when a key is signalled. The changes was
65 initially needed to support STUN, but then the STUN client implementation uses the
66 simpler select() (in stun_client.c).
67- Merge SDP library into PJMEDIA (no more PJSDP).
68 PJSDP only has couple of files (sdp.[hc]), not worth maintaining a library.
69- Fixed bug in select() I/O queue (not thread safe).
70
71
72Version 0.2.7 - 2005/05/14
73====================================
74PJLIB:
75- Major reorganization in pool, introducing pool factory and policy.
76 All libraries now can be completely agnostic about memory management
77 choosen by application.
78- Fixed bug in GUID generation on mingw
79- Fixed bug in scanner if ASCII > 127 is fed into the input
80- More doxygen documentation
81
82PJMEDIA:
83- Renamed some functions/structs/etc.
84
85UA library:
86- Registration client completed (including authentication).
87- Fixed a crash condition when tsx has not received any response.
88
89PJSUA:
90- Use getopt.c
91
92
93Version 0.2.6 - 2005/04/17
94====================================
95All:
96- tidying up header files.
97
98Core library:
99- Removed PJSIP_HAS_DUMP macro (now automatically calculated based on log level)
100- Added pjsip_tx_data_invalidate_msg()
101
102UA library:
103- big modification in dialog API to better support injecting custom header
104 in outgoing message and to make it more flexible for future features (such
105 as caching the outgoing message):
106 - sending messages is now done in two steps: (1)create the msg transmit
107 buffer (pjsip_dlg_tx_data), (2)send the msg transmit buffer.
108 - dialog state won't change in step (1); it will change only
109 when the message is actually sent in step (2).
110 What won't change:
111 - the dialog state
112 - outgoing CSeq
113 - outgoing message transmit buffer (pjsip_dlg_tx_data) will be deleted
114 when sent in step (2). Application MAY save request messages for
115 future transmission, even after the request has been sent. To do so,
116 it must increment the reference counter and remember that each time
117 the request is sent, the reference counter will be decremented. Also
118 application CAN NOT re-send the message while the transaction that
119 sends the message has not terminated.
120- changed API names: pjsip_dlg_answer_invitation() --> pjsip_dlg_answer(), etc.
121- initial sip_reg.h for SIP registration.
122
123Auth library:
124- the digest authentication should work, however it has not been tested
125 with any SIP servers because we don't have REGISTER support yet.
126*Note*:
127 authentication in pjsua still uses hardcoded user/pass: hello/world.
128
129
130Version 0.2.5.2 - 2005/03/25
131====================================
132UA library:
133- Major modification in dialog callbacks, now high level callbacks such as
134 on_calling(), on_incoming(), on_provisional(), on_established(), and
135 on_disconnected() are provided instead of just one callback (on_event()).
136- Added pjsip_dlg_disconnect() which should handle all cases of disconnection
137 such as sending CANCEL, sending BYE, or sending final response to INVITE.
138- Added and updated doxygen comments.
139- Changed: pjsip_dialog_xxx --> pjsip_dlg_xxx
140
141New:
142- PJSIP Auth library, which supports digest scheme.
143- Only client functionality is present at the moment.
144
145PJSUA:
146- Remove callgen feature, as it makes the application complicated.
147 Will move it to different application, to make way for more sophisticated
148 call generator.
149- Support the new callback framework.
150- Support the new digest authentication (UAC only).
151
152SIP core:
153- Added PJSIP_EVENT_BEFORE_TX, triggered by transaction before sending
154 outgoing message (including retransmission). Application can use this event
155 (via dialog callback) to modify the message before transmission (such as
156 adding authorization headers).
157- Added general purpose function to print text body.
158- Move constant strings in parser to public/extern, just in case other
159 part of the library need to use them.
160
161PJMEDIA:
162- Protect against NULL in destroy session.
163
164Misc:
165- Rename build output directory x_Win32_x --> x_vc7_x or x_vc6_x, also
166 library naming includes _vc7_ or _vc6_ now.
167- Renamed pjsip_test_core --> pjsip_core_test.
168- Renamed pjaudio_tool --> pjmedia_audio_tool.
169- Renamed sdp_test --> pjsdp_test
170- PJLIB test: added second pool test after new/malloc test.
171- Renamed README.txt --> INSTALL.txt