* Added a 'PyPAD.Receiver::setConfigFile()' method.
* Added a 'PyPAD.Update::shouldBeProcessed()' method.
* Updated the 'pypad_filewrite.py' script to use the
'PyPAD.Update::shouldBeProcessed()' method.
* Updated the 'pypad_udp.py' script to use the
'PyPAD.Update::shouldBeProcessed()' method.
* Added a 'make install' rule in 'apis/PyPAD/examples/' to install
PyPAD scripts in '${libdir}/rivendell/PyPAD/'.
* Fixed a typo in the pseudo-bangpath line in the example PyPAD
scripts.
* Renamed 'apis/PyPAD/examples/pypad_test.py' to
'apisPyPAD/tests/pad_test.py'.
* Added a 'hostName' field to the JSON PAD 'padUpdate' object.
* Added a 'PyPAD.Update::hostName()' method.
* Added a 'shortHostName' field to the JSON PAD 'padUpdate' object.
* Added a 'PyPAD.Update::shortHostName()' method.
* Added a 'PyPAD.Update::resolveFilepath()' method.
* Added 'apis/PyPAD/tests/filepath_test.py.
* Added 'api/PyPAD/examples/pypad_filewrite.py'.
* Renamed 'apis/PyPAD/examples/pypad_test.py' to
'apisPyPAD/tests/pad_test.py'.
* Added a 'hostName' field to the JSON PAD 'padUpdate' object.
* Added a 'PyPAD.Update::hostName()' method.
* Added a 'shortHostName' field to the JSON PAD 'padUpdate' object.
* Added a 'PyPAD.Update::shortHostName()' method.
* Added a 'PyPAD.Update::resolveFilepath()' method.
* Added 'apis/PyPAD/tests/filepath_test.py.
* Added 'api/PyPAD/examples/pypad_filewrite.py'.
* Added support for the 'ProcessNullUpdates=' directive in the
'pypad_udp.py' script.
* Added support for the log selection directives in the
'pypad_udp.py' script.
* Changed the name of the JSON PAD field 'logMachine' to 'machine'.
* Changed the name of the 'PyPAD.Update::logMachine()' method to
'PyPAD.Update::machine()'.
* Changed the name of the JSON PAD field 'logMode' to 'mode'.
* Added a 'PyPAD.Update::mode()' method.
* Added a 'cutNumber' field to the JSON PAD 'now' and 'next' objects.
* Added a 'PyPAD.FIELD_CUT_NUMBER' define.
* Added 'api/PyPAD/examples/pypad_test.py'.
* Renamed the 'PyPAD.Update::padFields()' method to
'PyPAD.Update::resolvePadFields()'.
* Added a 'PyPAD.Update::padField()' method.
* Added a 'PyPAD.Update::escape()' method.
* Renamed the 'PyPAD.Update::dateTime()' method to
'PyPAD.Update::dateTimeString()'.
* Changed the format of the 'dateTime' field in the PAD JSON structure
from RFC822 to ISO 8601.
* Added a 'startDateTime' field to the 'now' and 'next' objects in
the PAD JSON structure.
* Added a PAD Type enumeration for use in 'PyPAD.Update'.
* Added 'PyPAD.Update::hasPadType()' and 'PyPAD.Update.startDateTime()'
methods.
* Removed 'PyPAD.Update::hasNowPad()' and 'PyPAD.Update:hasNextPad()'
methods.
* Added support for '%d(<dt>)' and '%D(<dt>)' wildcards in
'PyPAD.Update::padFields()'.
* Changed the Python namespace of the PyPAD classes from
'rivendell.PyPAD' to 'PyPAD'.
* Renamed the 'PyPAD.PyPADReceiver' class to 'PyPAD.Receiver'.
* Renamed the 'PyPAD.PyPADUpdate' class to 'PyPAD.Update'.
* Added a 'port' argument to the 'PyPAD.Receiver::start()' method.
* Added an 'escaping' argument to the 'PyPAD.Update::padFields()'
method.
* Added support for the 'Encoding=' directive to the 'pypad_udp.py'
script.
* Fixed buffer overflow bugs in the rd_export(7) rivcwebapi call.
* Fixed buffer overflow bugs in the rd_listservices(7) rivcwebapi call.
* Fixed buffer overflow bugs in the rd_trimaudio(7) rivcwebapi call.
* Added an 'RD_ListCartCuts()' function to 'rivwebcapi'.
* Changed the length of the 'cut_name' member of the 'rd_cut' struct
from 11 to 41 in 'rivwebcapi'.
* Added a 'struct rd_cut *cart_cuts' member to the 'rd_cart' struct
in 'rivwebcapi'.
* Modified rd_listlog(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listschedcodes(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listservices(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listsystemsettings(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_removecart(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_removecut(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_savelog(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_trimaudio(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_unassignschedcode(7) in the rivwebcapi to process UTF-8
strings correctly.
* Fixed buffer overflow vulnerabilities in the rivwebcapi test
harnesses.
* Modified rd_createticket(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_addcart(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_addcut(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_addlog(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_assignschedcode(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_audioinfo(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_audiostore(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_copyaudio(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_deletelog(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_editcart(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_editcut(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_export(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_exportpeaks(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listcart(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listcarts(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listcartschedcodes(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listcut(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listcuts(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listgroup(7) in the rivwebcapi to process UTF-8
strings correctly.
* Modified rd_listgroups(7) in the rivwebcapi to process UTF-8
strings correctly.