Commit 920f90dd authored by SVN-Git Migration's avatar SVN-Git Migration

Imported Upstream version 0.5.0

parent cff5d65a
This diff is collapsed.
(c) Copyright 2007-2009 by "The SABnzbd-team".
(c) Copyright 2007-2010 by "The SABnzbd-team" <team@sabnzbd.org>
The SABnzbd-team is:
......@@ -7,7 +7,6 @@ Current team:
ShyPike <shypike@sabnzbd.org>
sw1tch <switch@sabnzbd.org>
pairofdimes <pairofdimes@sabnzbd.org>
deam <deam@sabnzbd.org>
inpheaux <inpheaux@sabnzbd.org>
rAf <rAf@sabnzbd.org>
Honorary member (and original author)
......
SABnzbd+ v0.4.12
SABnzbd+ v0.5.0
-------------------------------------------------------------------------------
0) LICENSE
-------------------------------------------------------------------------------
(c) Copyright 2008-2009 The SABnzbd-Team <team@sabnzbd.org>
(c) Copyright 2007-2010 by "The SABnzbd-team" <team@sabnzbd.org>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
......@@ -28,8 +28,7 @@ It's just a simple standard installer.
After installaton, find the SABnzbd program in the Start menu and start it.
Within 5-10 seconds your web browser will start and show the user interface.
Use the "Help" button in the web-interface to be directed to the Help Wiki
on SourceForge.net
Use the "Help" button in the web-interface to be directed to the Help Wiki.
-------------------------------------------------------------------------------
......@@ -38,8 +37,7 @@ on SourceForge.net
Unzip pre-built version to any folder of your liking.
Start the SABnzbd.exe program.
Within 5-10 seconds your web browser will start and show the user interface.
Use the "Help" button in the web-interface to be directed to the Help Wiki
on SourceForge.net
Use the "Help" button in the web-interface to be directed to the Help Wiki.
-------------------------------------------------------------------------------
......@@ -50,42 +48,44 @@ You need to have Python installed and some modules.
Unix/Linux/OSX
Python-2.4.4 http://www.python.org
cElementTree-1.0.5 http://effbot.org/downloads/
OR
Python-2.5.2 http://www.python.org
Python-2.5.4 http://www.python.org
Windows
Python-2.5.2 http://www.activestate.com
Python-2.5.latest http://www.activestate.com
Essential modules
cheetah-2.0.1 http://www.cheetahtemplate.org/
cheetah-2.0.1+ http://www.cheetahtemplate.org/
yenc module >= 0.3 http://sabnzbd.sourceforge.net/yenc-0.3.tar.gz
http://sabnzbd.sourceforge.net/yenc-0.3-w32fixed.zip (Win32-only)
par2cmdline >= 0.4 http://parchive.sourceforge.net/
http://chuchusoft.com/par2_tbb/index.html (multi-core)
Essential modules for python 2.4 ONLY
pysqlite3 >= 2.3.4 http://pysqlite.org (python-pysqlite2)
Optional modules
unrar >= 3.70 http://www.rarlab.com/rar_add.htm
unrar >= 3.90+ http://www.rarlab.com/rar_add.htm
unzip >= 5.52 http://www.info-zip.org/
feedparser >= 4.1 http://feedparser.org/
pyopenssl => 0.7 http://sourceforge.net/projects/pyopenssl/
Unix/Linux/OSX (source)
openssl => v0.9.8g http://www.openssl.org/
Windows (binaries)
openssl => v0.9.8g http://www.slproweb.com/products/Win32OpenSSL.html
(You only need libeay32.dll and ssleay32.dll)
Optional modules Windows
pyopenssl >= 0.10 http://pypi.python.org/pypi/pyOpenSSL
(Binaries, including the OpenSSL libraries)
Optional modules Unix/Linux/OSX
pyopenssl >= 0.7 http://pypi.python.org/pypi/pyOpenSSL
openssl => v0.9.8g+ http://www.openssl.org/
Make sure the OpenSSL libraries match with PyOpenSSL
Embedded modules (no need to install)
CherryPy-2.3.0 http://www.cherrypy.org
Embedded modules (only use the included version)
CherryPy-3.2 rev2138 with patches http://www.cherrypy.org
Unpack the ZIP-file containing the SABnzbd sources to any folder of your liking.
Start the program from the commandline:
python SABnzbd.py
Within 5-10 seconds your web browser will start and show the user interface.
Use the "Help" button in the web-interface to be directed to the Help Wiki
on SourceForge.net
Use the "Help" button in the web-interface to be directed to the Help Wiki.
-------------------------------------------------------------------------------
......@@ -111,40 +111,13 @@ may help you solve problems easier.
-------------------------------------------------------------------------------
Visit the WIKI site:
http://sabnzbdplus.wiki.sourceforge.net/
http://wiki.sabnzbd.org/
-------------------------------------------------------------------------------
6) CREDITS
-------------------------------------------------------------------------------
o) Plush alternative web interface
pairofdimes
o) Smpl alternative web interface
switch
o) SABnzbd uses various code from pynewsleecher, newsunpack and grabnzb by:
Freddie (freddie@madcowdisease.org) (http://www.madcowdisease.org/mcd)
o) SABnzbd interface is served by:
cherrypy (http://www.cherrypy.org/)
o) SABnzbd configfile is interpreted by:
pythonutils.configObj (http://www.voidspace.org.uk/python/pythonutils.html)
o) SABnzbd MS Windows .exe is generated by :
py2exe (http://starship.python.net/crew/theller/py2exe/)
o) SABnzbd Scheduler:
kronos (http://www.razorvine.net/downloads.html)
o) SABnzbd Authentication:
MultiAuth (http://projects.dowski.com/view/multiauth)
o) python yenc module:
http://golug.cc.uniud.it/yenc.html
o) json.py:
Patrick D. Logan
http://sourceforge.net/projects/json-py
Serveral parts of SABnzbd were built by other people, illustrating the
wonderful world of Free Open Source Software.
See the licences folder of the main program and of the skin folders.
List of known issues.
*******************************************
*** Known issues ***
*******************************************
*** Known problems ***
- When par2 or unrar hang up, never just stop SABnzbd.
Instead use your operating system's task manager to stop the par2 or unrar program.
Forcing SABnzbd to quit may damage your queues.
Windows-only:
If you keep having trouble with par2 multicore you can disable it
in Config->Switches.
This will force the use of the old and tried, but slower par2-classic program.
- Blocking of the queue can occur in the combination of a missing
article and a non-responding (backup) server
- Windows cannot handle pathnames longer than 254 characters.
Currently, SABnzbd doesn't handle this problem gracefully.
We have added the INI-only option "folder_length_max" in which you can set
a maximum folder name size.
For Windows the default is 128 and for others 256.
A quite safe value for Windows would be 64.
SABnzbd will take care of overlapping names.
See: http://wiki.sabnzbd.org/configure-special
- Some Usenet servers have intermittent login (or other) problems.
For these the server blocking method is not very favourable.
There is an INI-only option that will limit blocks to 1 minute.
no_penalties = 1
See: http://wiki.sabnzbd.org/configure-special
- On OSX you will have problems running Python user scripts.
This is caused by wrong behaviour of the Python-to-app converter we use.
Currently we cannot fix this. As a work-around you need to add
the -E parameter to the first line of your Python script.
Example:
#!/bin/python -E
- On OSX you may encounter downloaded files with foreign characters.
The par2 repair may fail when the files were created on a Windows system.
The problem is caused by the PAR2 utility and we cannot fix this now.
This does not apply to files inside RAR files.
- On Linux when you download files they may have the wrong character encoding.
You will see this only when downloaded files contain accented characters.
You need to fix it yourself by running the convmv utility (availaible for most Linux platforms).
- The "Watched Folder" sometimes fails to delete the NZB files it has
processed. This happens when other software still accesses these files.
Some third-party utilities supporting SABnzbd are known to do this.
SABnzbd will remember these files and ignore them.
We cannot solve this problem, because the Operating System (read Windows)
prevents the removal.
- Jobs deleted from the queue will leave downloaded files behind
in the "incomplete" folder.
......@@ -16,13 +53,18 @@ List of known issues.
- Memory usage can sometimes have high peaks. This makes using SABnzbd on very low
memory systems (eg a SAN device) a challenge.
- On some NAS/SAN systems you may have to downgrade CherryPy to 2.2.1.
Remove the "cherrypy" directory inside SABnzbd and install an older
CherryPy as a Python module.
- SABnzbd is not compatible with some ZoneAlarm firewall versions.
Comodo and the Windows firewall work fine.
- SABnzbd is not compatible with some software firewall versions.
The Mircosoft Windows Firewall works fine, but remember to tell this
firewall that SABnzbd is allowed to talk to other computers.
- When SABnzbd cannot send nofication emails, check your virus scanner,
firewall or securiry suite. It may be blocking outgoing email.
- When you are using external drives or network shares on OSX or Linux
make sure that the drives are mounted.
The operating system wil simply redirect your files to alternative locations.
You may have trouble finding the files when mounting the drive later.
- Sometimes logging stops. This is a notorious bug in Python logging. SABnzbd will
function as normal. If you run from sources or use the --console option with the
......
Copyright 2008-2009 The SABnzbd-Team <team@sabnzbd.org>
(c) Copyright 2007-2010 by "The SABnzbd-team" <team@sabnzbd.org>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
......@@ -15,4 +14,4 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
See accompanying files GPL2.txt and GPL3.txt.
See accompanying files GPL2.txt and GPL3.txt.
\ No newline at end of file
Metadata-Version: 1.0
Name: SABnzbd
Version: 0.4.12
Summary: SABnzbd-0.4.12
Version: 0.5.0
Summary: SABnzbd-0.5.0
Home-page: http://sourceforge.net/projects/sabnzbdplus
Author: The SABnzbd Team
Author-email: team@sabnzbd.org
License: GNU General Public License 2 (GPL2) or later
License: GNU General Public License 2 (GPL2 or later)
Description: Fully automated Usenet Binary Downloader
Platform: posix
This diff is collapsed.
This diff is collapsed.
......@@ -10,6 +10,7 @@ echo The third parameter (nice name) = %3
echo The fourth parameter (newzbin #) = %4
echo The fifth parameter (category) = %5
echo The sixth parameter (group) = %6
echo The seventh parameter (status) = %7
echo.
......@@ -10,6 +10,7 @@ echo "The third parameter (nice name) =" "$3"
echo "The fourth parameter (newzbin-id) =" "$4"
echo "The fifth parameter (category) =" "$5"
echo "The sixth parameter (group) =" "$6"
echo "The seventh parameter (status) =" "$7"
echo
Copyright (c) 2004-2007, CherryPy Team (team@cherrypy.org)
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the CherryPy Team nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This CherryPy Rev 2138 patched with Rev 2272.
This diff is collapsed.
import cgi
import cherrypy
class FieldStorage(cgi.FieldStorage):
def __init__(self, *args, **kwds):
try:
cgi.FieldStorage.__init__(self, *args, **kwds)
except ValueError, ex:
if str(ex) == 'Maximum content length exceeded':
raise cherrypy.HTTPError(status=413)
else:
raise ex
def read_lines_to_eof(self):
"""Internal: read lines until EOF."""
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
self.__write(line)
def read_lines_to_outerboundary(self):
"""Internal: read lines until outerboundary."""
next = "--" + self.outerboundary
last = next + "--"
delim = ""
last_line_lfend = True
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
if line[:2] == "--" and last_line_lfend:
strippedline = line.strip()
if strippedline == next:
break
if strippedline == last:
self.done = 1
break
odelim = delim
if line[-2:] == "\r\n":
delim = "\r\n"
line = line[:-2]
last_line_lfend = True
elif line[-1] == "\n":
delim = "\n"
line = line[:-1]
last_line_lfend = True
else:
delim = ""
last_line_lfend = False
self.__write(odelim + line)
def skip_lines(self):
"""Internal: skip lines until outer boundary if defined."""
if not self.outerboundary or self.done:
return
next = "--" + self.outerboundary
last = next + "--"
last_line_lfend = True
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
if line[:2] == "--" and last_line_lfend:
strippedline = line.strip()
if strippedline == next:
break
if strippedline == last:
self.done = 1
break
if line.endswith('\n'):
last_line_lfend = True
else:
last_line_lfend = False
import cgi
import cherrypy
class FieldStorage(cgi.FieldStorage):
def __init__(self, *args, **kwds):
try:
cgi.FieldStorage.__init__(self, *args, **kwds)
except ValueError, ex:
if str(ex) == 'Maximum content length exceeded':
raise cherrypy.HTTPError(status=413)
else:
raise ex
def read_lines_to_eof(self):
"""Internal: read lines until EOF."""
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
self.__write(line)
def read_lines_to_outerboundary(self):
"""Internal: read lines until outerboundary."""
next = "--" + self.outerboundary
last = next + "--"
delim = ""
last_line_lfend = True
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
if line[:2] == "--" and last_line_lfend:
strippedline = line.strip()
if strippedline == next:
break
if strippedline == last:
self.done = 1
break
odelim = delim
if line[-2:] == "\r\n":
delim = "\r\n"
line = line[:-2]
last_line_lfend = True
elif line[-1] == "\n":
delim = "\n"
line = line[:-1]
last_line_lfend = True
else:
delim = ""
last_line_lfend = False
self.__write(odelim + line)
def skip_lines(self):
"""Internal: skip lines until outer boundary if defined."""
if not self.outerboundary or self.done:
return
next = "--" + self.outerboundary
last = next + "--"
last_line_lfend = True
while 1:
line = self.fp.readline(1<<16)
if not line:
self.done = -1
break
if line[:2] == "--" and last_line_lfend:
strippedline = line.strip()
if strippedline == next:
break
if strippedline == last:
self.done = 1
break
if line.endswith('\n'):
last_line_lfend = True
else:
last_line_lfend = False
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
"""WSGI server interface (see PEP 333). This adds some CP-specific bits to
the framework-agnostic wsgiserver package.
"""