* Added a 'RDLIBRARY.IS_SINGLETON' field to the database.
* Added a 'RDLOGEDIT.IS_SINGLETON' field to the database.
* Incremented the database version to 367.
* Added 'RDLibraryConf::isSingleton()' and
'RDLibraryConf::setIsSingleton()' methods.
* Added 'RDLogeditConf::isSingleton()' and
'RDLogeditConf::setIsSingleton()' methods.
* Modified rdcartslots(1), rdcastmanager(1), rdcatch(1),
rdlogmanager(1) and rdpanel(1) to allow only a single instance to
run at a time.
* Modified rdlibrary(1) and rdlogedit(1) to conditionally allow
only a single instance to run at a time.
* Added an rdsinglestart(1) utility.
* Added a 'wmctrl' dependency to the 'rivendell' RPM package.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Consolidated the 'pypad' and 'rivwebpyapi' Python modules into
a single 'rivendellaudio' package namespace.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Rearranged the ordering of the module imports in
'apis/rivwebpyapi/api/rivwebpyapi.py' to conform to recommendations
in Python PEP 8.
* Added a 'requests' dependency to the PyPI package requirements
for the 'rivwebpyapi' API.
* Incremented the version of the 'rivwebpyapi' PyPI package to
4.0.0b8.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Added a 'python36-rivwebpyapi' package to the 'make rpm' target.
* Split the 'make rpm' target into 'make base-rpm' and
'make py-rpm' sub-targets.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Modified the build system to suppress installation of usermode
support components on non-RedHat-ish platforms.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Added a 'SYSTEM.RSS_PROCESSOR_STATION' field to the database.
* Added a 'PODCASTS.EXPIRATION_DATETIME' field to the database.
* Dropped the 'PODCASTS.SHELF_LIFE' field from the database.
* Incremented the database version to 329.
* Modified convention to use local system time for all podcast
components.
* Added 'RDPodcast::expirationDateTime()' and
'RDPodcast::setExpirationDateTime()' methods.
* Removed 'RDPodcast::shelfLife()' and 'RDPodcast::setShelfLife()'
methods.
* Added an rdrssd(8) daemon.
* Removed the rdpurgecasts(8) utility.
* Added 'RDSystem::rssProcessorStation()' and
'RDSystem::setRssProcessorStation()' methods.
* Added a 'Process RSS Updates' control to the 'System-Wide Settings'
dialog in rdadmin(1).
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Dropped the 'FEEDS.AUDIENCE_METRICS' field from the database.
* Dropped the 'FEEDS.KEEP_METADATA' field from the database.
* Dropped the 'FEEDS.MEDIA_LINK_MODE' field from the database.
* Dropped the 'FEEDS.REDIRECT_PATH' field from the database.
* Dropped the 'CAST_DOWNLOADS' table from the database.
* Incremented the database version to 328.
* Removed support for dynamically generated RSS feed metadata.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Added a 'cmdline_parser_test' test harness.
* Fixed a bug in 'RDCmdSwitch' that caused value-only arguments
containing '=' characters to be incorrectly parsed.
Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
* Added a 'FEEDS.AUDIENCE_METRICS' field to the database.
* Incremented the database version to 316.
* Added a 'Collect Audience Metrics' checkbox to the 'Feed'
dialog in rdadmin(1).
* Added an 'RDTransfer' base class.
* Rebased 'RDDelete' to 'RDTransfer'.
* Added 'sftp' support to 'RDDelete'.
* Added 'file' support to 'RDDelete'.
* Refactored RSS generation to occur in 'RDFeed'.
* Added a 'delete_test' test harness.
* Fixed a bug with the '%y' metadata wildcard where garbage would
be returned if a valid year had not been set.
* Added a 'metadata_wildcard_test' harness.
* Removed all Qt3Support dependencies from the 'RDUpload' class.
* Removed all Qt3Support dependencies from the 'RDDownload' class.
* Added a 'test_download' test harness.
* Refactored routines for parsing/writing standard date/time strings
(RFC822 and XML xs:dateTime formats) into 'lib/rddatetime.[cpp|h].
* Removed the 'RDWebDateTime()', 'RDGetWebDateTime()',
'RDGetWebDate()', 'RDGetWebTime()', 'RDGetWebMonth()',
'RDXmlDate()', 'RDXmlTime()', 'RDXmlDateTime()' and
'RDXmlTimeZoneSuffix()' functions from 'lib/rdweb.[cpp|h].
* Added a 'dateparse_test' test harness.
* Fixed a path bug in the Console Helper configuration that broke
startup of rdalsaconfig(8) and rddbconfig(8) from the desktop
menu when using default --prefix= value.
* Renamed the RD_RLM2_CLIENT_TCP_PORT define to RD_PAD_CLIENT_TCP_PORT.
* Renamed the RD_RLM_SOURCE_UNIX_ADDRESS define to
RD_PAD_SOURCE_UNIX_ADDRESS.
* Added a RD_PYPAD_SCRIPT_DIR define.
* Added an 'RDNotification::PypadType' value to the
'RDNotification::Type' enumeration.
* Added 'PypadOwner=' and 'PypadGroup=' directives to the
'[Identity]' section of rd.conf(5).
* Added an rdpadengined(8) service.
* Added a 'PYPAD_INSTANCES.IS_RUNNING' field to the database.
* Added a 'PYPAD_INSTANCES.EXIT_CODE' field to the database.
* Added a 'PYPAD_INSTANCES.ERROR_TEXT' field to the database.
* Incremented the database version to 304.
* 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'.