Commit 6315795d authored by SVN-Git Migration's avatar SVN-Git Migration

Imported Upstream version 0.7.11

parent 83db7ae3
*******************************************
*** This is SABnzbd 0.7.9 ***
*** This is SABnzbd 0.7.11 ***
*******************************************
SABnzbd is an open-source cross-platform binary newsreader.
It simplifies the process of downloading from Usenet dramatically,
......
-------------------------------------------------------------------------------
0.7.11Final by The SABnzbd-Team
-------------------------------------------------------------------------------
- Bad articles from some servers were accepted as valid data
- Show warning when the decoder encounters I/O errors
- Generic Sort failed to rename files when an extra folder level was present in the RAR files
- Obfuscated file name support caused regular NZBs to verify slower
-------------------------------------------------------------------------------
0.7.10Final by The SABnzbd-Team
-------------------------------------------------------------------------------
- Disable obsolete newzbin bookmark readout
- Show speed when downloading in Forced mode while paused
- Plush History icons repair and unpack were swapped
- Try to repair rar/par sets with obfuscated names
- Reset "today" byte counters at midnight even when idle
- Display next RSS scan moment in Cfg->RSS
- An email about a failed should say that the download failed
- Report errors coming from fully encrypted rar files
- Accept NNTP error 400 without "too many connection" clues as a transient error.
- Accept %fn (next to %fn.%ext) as end parameter in sorting strings.
-------------------------------------------------------------------------------
0.7.9Final by The SABnzbd-Team
-------------------------------------------------------------------------------
......
SABnzbd 0.7.9
SABnzbd 0.7.11
-------------------------------------------------------------------------------
0) LICENSE
......
Metadata-Version: 1.0
Name: SABnzbd
Version: 0.7.9
Summary: SABnzbd-0.7.9
Version: 0.7.11
Summary: SABnzbd-0.7.11
Home-page: http://sabnzbd.org
Author: The SABnzbd Team
Author-email: team@sabnzbd.org
......
Release Notes - SABnzbd 0.7.9
===============================
Release Notes - SABnzbd 0.7.11
================================
## Bug fix 0.7.9
- Fix fatal error when encountering a malformed article
## Features (0.7.8)
- Use "category" and "password" meta-data in NZB files
(Provided by some indexers)
- Option to abort download when it is clear that not enough data is available
(For removed posts it will be faster than pre-download check)
- Add "Abort" option for encryption detection
- Removed articles are now listed separately in download report
- Special option "wait_for_dfolder", enables waiting for external temp download folder at startup
## Bug fixes (0.7.8)
- Fix problem with %fn substitution in Sorting
- Pre-download check did not work with all servers
- Fix missing Retry link for "Out of retention" jobs.
- API function "addfile" now accepts "nzbname" parameter for ZIP/RAR files with one NZB.
- Prevent retries when an NZB with just samples is retrieved from an indexer
(and you had the "do not download samples" option enabled).
## Bug fixes
- Obfuscated file name support causes regular multi-set NZBs to verify (much) slower
- Bad articles from some servers are accepted as valid data
- Generic Sort fails to rename files when an extra folder level is present in the RAR files
## What's new in 0.7.0
......
#
# Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
# Copyright 2008-2013 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
......
......@@ -95,6 +95,7 @@
<label class="config narrow" for="rss_rate">$T('opt-rss_rate')</label>
<input type="number" name="rss_rate" id="rss_rate" value="$rss_rate" size="8" min="15" max="1440" />
<input type="submit" value="$T('button-save')" />
<span class "config narrow">&nbsp;&nbsp;$T('Next scan at:')&nbsp;$rss_next</span>
<span class="desc narrow">$T('explain-rss_rate')</span>
</div>
</fieldset>
......
......@@ -10,7 +10,7 @@
</table>
<div class="sabnzbd_logo main_sprite_container sprite_sabnzbdplus_logo"></div>
<p><strong>SABnzbd $T('version'):</strong> $version</p>
<p><small>Copyright (C) 2008-2012, The SABnzbd Team &lt;team@sabnzbd.org&gt;</small></p>
<p><small>Copyright (C) 2008-2013, The SABnzbd Team &lt;team@sabnzbd.org&gt;</small></p>
<p><small>$T('yourRights')</small></p>
</div>
......
......@@ -8,7 +8,7 @@ jQuery(function($){
// ***************************************************************
// Plush defaults
refreshRate: $.cookie('plushRefreshRate') ? $.cookie('plushRefreshRate') : 30, // refresh rate in seconds
refreshRate: $.cookie('plushRefreshRate') ? $.cookie('plushRefreshRate') : 4, // refresh rate in seconds
containerWidth: $.cookie('plushContainerWidth') ? $.cookie('plushContainerWidth') : '100%', // width of all elements on page
queuePerPage: $.cookie('plushQueuePerPage') ? $.cookie('plushQueuePerPage') : 5, // pagination - nzbs per page
histPerPage: $.cookie('plushHistPerPage') ? $.cookie('plushHistPerPage') : 5, // pagination - nzbs per page
......@@ -16,7 +16,7 @@ jQuery(function($){
confirmDeleteHistory: $.cookie('plushConfirmDeleteHistory') == 0 ? false : true, // confirm history nzb removal
blockRefresh: $.cookie('plushBlockRefresh') == 0 ? false : true, // prevent refreshing when hovering queue
failedOnly: $.cookie('plushFailedOnly') == 1 ? 1 : 0, // prevent refreshing when hovering queue
multiOps: $.cookie('plushMultiOps') == 1 ? true : false, // is multi-operations menu visible in queue
multiOps: $.cookie('plushMultiOps') == 0 ? false : true, // is multi-operations menu visible in queue
noTopMenu: $.cookie('plushNoTopMenu') == 1 ? false : true, // is top menu visible
multiOpsChecks: null,
......@@ -1242,7 +1242,7 @@ $.plush.histprevslots = $.plush.histnoofslots; // for the next refresh
SetQueueETAStats : function(speed,kbpersec,timeleft,eta) {
// ETA/speed stats at top of queue
if (kbpersec < 1 || $.plush.paused) {
if (kbpersec < 100 && $.plush.paused) {
$('#stats_eta').html('&mdash;');
$('#stats_speed').html('&mdash;');
$('#time-left').attr('title','&mdash;'); // Tooltip on "time left"
......
......@@ -401,12 +401,12 @@ body {
.sprite_hv_download{ background-position: 0 -167px; }
.sprite_hv_error{ background-position: 0 -193px; }
.sprite_hv_filejoin{ background-position: 0 -219px; }
.sprite_hv_repair{ background-position: 0 -245px; }
.sprite_hv_unpack{ background-position: 0 -245px; }
.sprite_hv_report{ background-position: 0 -271px; }
.sprite_hv_script{ background-position: 0 -297px; }
.sprite_hv_star{ background-position: 0 -323px; }
.sprite_hv_stats{ background-position: 0 -349px; }
.sprite_hv_unpack{ background-position: 0 -375px; }
.sprite_hv_repair{ background-position: 0 -375px; }
.sprite_progress_done{ background-position: 0 -401px; } /* queue.tmpl */
.sprite_progressbar_bg{ background-position: 0 -430px; }
.sprite_q_menu_pausefor{ background-position: 0 -459px; }
......
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.
......@@ -650,7 +650,7 @@ def _api_test_email(name, output, kwargs):
pack['unpack'] = ['action 1', 'action 2']
res = sabnzbd.emailer.endjob('I had a d\xe8ja vu', 123, 'unknown', True,
os.path.normpath(os.path.join(cfg.complete_dir.get_path(), '/unknown/I had a d\xe8ja vu')),
123*MEBI, pack, 'my_script', 'Line 1\nLine 2\nLine 3\nd\xe8ja vu\n', 0)
123*MEBI, None, pack, 'my_script', 'Line 1\nLine 2\nLine 3\nd\xe8ja vu\n', 0)
if res == 'Email succeeded':
res = None
return report(output, error=res)
......
......@@ -398,10 +398,20 @@ class BPSMeter(object):
return None, 0, 0
def midnight(self):
""" Midnight action: dummy update for all servers """
for server in self.day_total:
self.update(server)
def quota_handler():
""" To be called from scheduler """
logging.debug('Checking quota')
BPSMeter.do.reset_quota()
def midnight_action():
if BPSMeter.do:
BPSMeter.do.midnight()
BPSMeter()
......@@ -105,7 +105,9 @@ class Decoder(Thread):
found = True
except IOError, e:
logme = Ta('Decoding %s failed') % art_id
logging.info(logme)
logging.warning(logme)
logging.info("Traceback: ", exc_info = True)
sabnzbd.downloader.Downloader.do.pause()
article.fetcher = None
......@@ -262,7 +264,10 @@ def decode(article, data):
except IndexError:
raise BadYenc()
decoded_data = '\r\n'.join(data)
if found:
decoded_data = '\r\n'.join(data)
else:
raise BadYenc()
#Deal with yenc encoded posts
elif (ybegin and yend):
......
......@@ -47,6 +47,8 @@ _PENALTY_SHARE = 10 # Account sharing detected
_PENALTY_TOOMANY = 10 # Too many connections
_PENALTY_PERM = 10 # Permanent error, like bad username/password
_PENALTY_SHORT = 1 # Minimal penalty when no_penalties is set
_PENALTY_VERYSHORT = 0.1 # Error 400 without cause clues
TIMER_LOCK = RLock()
......@@ -503,8 +505,7 @@ class Downloader(Thread):
ecode = msg[:3]
display_msg = ' [%s]' % msg
logging.debug('Server login problem: %s, %s', ecode, msg)
if ((ecode in ('502', '400')) and clues_too_many(msg)) or \
(ecode == '481' and clues_too_many(msg)):
if ecode in ('502', '481', '400') and clues_too_many(msg):
# Too many connections: remove this thread and reduce thread-setting for server
# Plan to go back to the full number after a penalty timeout
if server.active:
......@@ -537,6 +538,12 @@ class Downloader(Thread):
else:
penalty = _PENALTY_502
block = True
elif ecode == '400':
# Temp connection problem?
if server.active:
logging.debug('Unspecified error 400 from server %s', server.host)
penalty = _PENALTY_VERYSHORT
block = True
else:
# Unknown error, just keep trying
if server.active:
......
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.
......@@ -4,5 +4,5 @@
# You MUST use double quotes (so " and not ')
__version__ = "0.7.9"
__baseline__ = "c237ddfef464649ec3713d43c441def6c8656f46"
__version__ = "0.7.11"
__baseline__ = "a50412a32751f4d1d555020dea20a2da43d6a309"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment