Browse Source

updated changelog, readme and man page documentation according to the last changes

Helmut Pozimski 9 years ago
parent
commit
9d87a11127
6 changed files with 62 additions and 44 deletions
  1. 7 0
      CHANGELOG
  2. 28 23
      README
  3. 1 1
      TODO
  4. 24 18
      doc/configuration.rst
  5. 1 1
      doc/description.rst
  6. 1 1
      doc/files.rst

+ 7 - 0
CHANGELOG

@@ -1,3 +1,10 @@
+0.9
+---
+
+* Implemented API-less data retrieval mode using youtube-dl
+* Switched the configuration file over to json, existing files will be automatically converted
+* Refactoring in the database, youtubeAPI and subscription files
+
 0.8
 ---
 

+ 28 - 23
README

@@ -1,6 +1,6 @@
 === ABOUT ===
 
-stov is a program which allows you to subscribe to channels, playlists and search results on youtube. (More platforms may be implemented later) You don't need a youtube account for the program to work since it uses read-only access to the youtube API. You can for example run it as a cron job to automatically download your favourite videos.
+stov is a program which allows you to subscribe to channels, playlists and search results on youtube. (More platforms may be implemented later) You don't need a youtube account for the program to work since it uses read-only access to the youtube API or retrieves the needed data using youtube-dl. You can for example run it as a cron job to automatically download your favourite videos.
 
 === USAGE ===
 
@@ -10,43 +10,48 @@ see ./stov --help
 
 stov depends on the following software to be installed:
 
-	* Python 2.6 or higher (it might also work with earlier versions, but hasn't been tested, python 3.x should work)
-	* youtube-dl (get it from http://rg3.github.com/youtube-dl/ if you don't have it yet
+	* Python 2.7 or higher (python 3.x should work but is not officially supported, this is a release goal for 1.0)
+	* youtube-dl (get it from http://rg3.github.com/youtube-dl/ if you don't have it yet, it is needed to download videos and also for the "no API"-mode)
 
 === COPYING ===
 
 see LICENSE
 
 === CONFIGURATION ===
-By default, the configuration is defined in ~/stov/stov.config. A default config file is created for you when you run the program for the first time. The following parameters are currently available which you can alter manually:
-
-MAILTO: Recipient address used for notitifications
-MAILFROM: Sender address used for notifications
-MAILHOST: Host name or ip address of the mail server which is used to send notifications
-AUTH_NEEDED: Define if the smtp server need authentication (yes or no)
-USER_NAME: User name to use for smtp authentication if defined
-PASSWORD: Password to use for SMTP authentication
-YOUTUBE-DL: Path to the youtube-dl binary if not found automatically
-DOWNLOADDIR: Path the downloaded videos are saved into
-DATABASE: File name to use for the database
-SMTPPORT: Port used to connect to the mail server
-MAXVIDEOS: Maximum number of videos to retrieve from the youtube API for each subscription,
+By default, the configuration is defined in ~/stov/stov.json in the json format. A default config file is created for you when you run the program for the first time. The following parameters are currently available which you can alter manually:
+
+mailto: Recipient address used for notitifications
+mailfrom: Sender address used for notifications
+mailhost: Host name or ip address of the mail server which is used to send notifications
+auth_needed: Define if the smtp server need authentication (yes or no)
+user_name: User name to use for smtp authentication if defined
+password: Password to use for SMTP authentication
+youtube-dl: Path to the youtube-dl binary if not found automatically
+downloaddir: Path the downloaded videos are saved into
+database: File name to use for the database
+smtpport: Port used to connect to the mail server
+maxvideos: Maximum number of videos to retrieve from the youtube API for each subscription,
 	default 25, maximum 50, reduce this parameter for better parsing performance
-NOTIFY: Define if you want to be notified via email about new episodes of your subscriptions,
+notify: Define if you want to be notified via email about new episodes of your subscriptions,
 	valid values: yes or no
-DB_VERSION: Database version (Do not change!)
-CONFIG_VERSION: Configuration version (Do not change!)
-VIDEOCODEC: Video codec used for downloaded videos (valid values: h264, webm or flv)
-MAXRESOLUTION: Maximum resolution to use for downloaded videos, please note
+db_version: Database version (Do not change!)
+config_version: Configuration version (Do not change!)
+videocodec: Video codec used for downloaded videos (valid values: h264, webm or flv)
+maxresolution: Maximum resolution to use for downloaded videos, please note
 	that not all codecs and resolutions might be available so a lower resolution
 	or other codec might be used in these cases
-MAXFAILS: Number of times the download of a video may fail until it is marked as failed
+maxfails: Number of times the download of a video may fail until it is marked as failed
 	and won't be tried again
-CHECK_TITLE: Define if stov should check the title of each video in a search or channel
+check_title: Define if stov should check the title of each video in a search or channel
 	with search string subscription. This works around some deficits of the youtube
 	API which sometimes also returns video completely unrelated to your search.
 	Videos whose titles don't match the search string will be entirely ignored.
 	valid values: yes or no
+use_api: Define if you want to use the Youtube Data API v2. If this is set to false,
+	a fallback mode using youtube-dl will be used. This is generally much slower,
+	so using the API is recommended. However Google will cease offering the API 
+	without authentication in the foreseable future, so using the fallback mode
+	will be the only option then.
 
 === KNOWN ISSUES ===
 

+ 1 - 1
TODO

@@ -3,4 +3,4 @@ TODOs for 1.0:
 * Reintroduce some of the removed debug output
 * Remove python 2 compatibility code, support python 3 only
 * Check with pep8 and pylinth to do coding style improvements before the next release
-* Update man page
+* Update Changelog

+ 24 - 18
doc/configuration.rst

@@ -4,39 +4,45 @@ CONFIGURATION
 CONFIGURATION
 -------------
 
-MAILTO:	recipient address used for notitifications
+mailto:	recipient address used for notitifications
 
-MAILFROM:	sender address used for notifications
+mailfrom:	sender address used for notifications
 
-MAILHOST:	host name or ip address of the mail server which is used to send notifications
+mailhost:	host name or ip address of the mail server which is used to send notifications
 
-AUTH_NEEDED:	define if the smtp server need authentication (yes or no)
+auth_needed:	define if the smtp server need authentication (yes or no)
 
-USER_NAME:	user name to use for smtp authentication if defined
+user_name:	user name to use for smtp authentication if defined
 
-PASSWORD:	password to use for SMTP authentication
+password:	password to use for SMTP authentication
 
-YOUTUBE-DL:	path to the youtube-dl binary if not found automatically
+youtube-dl:	path to the youtube-dl binary if not found automatically
 
-DOWNLOADDIR:	path the downloaded videos are saved into
+downloaddir:	path the downloaded videos are saved into
 
-DATABASE:	file name to use for the database
+database:	file name to use for the database
 
-SMTPPORT:	port used to connect to the mail server
+smtpport:	port used to connect to the mail server
 
-MAXVIDEOS:	maximum number of videos to retrieve from the youtube API for each subscription, default 25, maximum 50, reduce this parameter for better parsing performance
+maxvideos:	maximum number of videos to retrieve from the youtube API for each subscription, default 25, maximum 50, reduce this parameter for better parsing performance
 
-NOTIFY:	define if you want to be notified via email about new episodes of your subscriptions, valid values: yes or no
+notify:	define if you want to be notified via email about new episodes of your subscriptions, valid values: yes or no
 
-DB_VERSION:	database version (Do not change!)
+db_version:	database version (Do not change!)
 
-CONFIG_VERSION:	configuration version (Do not change!)
+config_version:	configuration version (Do not change!)
 
-VIDEOCODEC:	video codec used for downloaded videos (valid values: h264, webm or flv)
+videocodec:	video codec used for downloaded videos (valid values: h264, webm or flv)
 
-MAXRESOLUTION:	maximum resolution to use for downloaded videos, please note that not all codecs and resolutions might be available so a lower resolution or other codec might be used in these cases
+maxresolution:	maximum resolution to use for downloaded videos, please note that not all codecs and resolutions might be available so a lower resolution or other codec might be used in these cases
 
-MAXFAILS: 	number of times the download of a video may fail until it is marked as failed and won't be tried again
+maxfails: 	number of times the download of a video may fail until it is marked as failed and won't be tried again
 
-CHECK_TITLE:	define if stov should check the title of each video in a search or channel with search string subscription. This works around some deficits of the youtube API which sometimes also returns video completely unrelated to your search. Videos whose titles don't match the search string will be entirely ignored. valid values: yes or no
+check_title:	define if stov should check the title of each video in a search or channel with search string subscription. This works around some deficits of the youtube API which sometimes also returns video completely unrelated to your search. Videos whose titles don't match the search string will be entirely ignored. valid values: yes or no
+
+use_api: Define if you want to use the Youtube Data API v2. If this is set to false,
+        a fallback mode using youtube-dl will be used. This is generally much slower,
+        so using the API is recommended. However Google will cease offering the API 
+        without authentication in the foreseable future, so using the fallback mode
+        will be the only option then.
 

+ 1 - 1
doc/description.rst

@@ -6,4 +6,4 @@ DESCRIPTION
 
 Stov is a little tool which allows you to subscribe to channels (or search results within channels), playlists or search results on the video platform youtube. It then pulls all necessary data from the youtube API and saves it into it's internal database. This information can be used to automatically download videos contained in the defined subscriptions. For this functionality, the additional *youtube-dl* utility is needed. It is recommended that you use cron or another similar mechanism to periodically update video data and download new videos.
 
-Since stov only uses read-only access to the youtube API, no developer key or youtube account is needed to use it. 
+Since stov only uses read-only access to the youtube API or youtube-dl to retrieve the needed data, no developer key or youtube account is needed to use it. 

+ 1 - 1
doc/files.rst

@@ -4,7 +4,7 @@ FILES
 FILES
 -----
 
-**~/.stov/stov.config**
+**~/.stov/stov.json**
 	This file is automatically created when you run stov for the first time, optionally you may also use a rudamentary assistant which will ask you which value you'd like to use for each setting. See *CONFIGURATION* for more details.
 **~/.stov/stov.sqlite**
 	This database contains two tables ("videos" and "subscriptions") which contain all relevant information about the configured subscriptions and the videos contained in these. It uses sqlite3 format so you could also use sqlite3 on the command line to edit it manually if you feel the need to do so.