mirror of
https://github.com/sabnzbd/sabnzbd.git
synced 2026-01-06 06:28:45 -05:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f5f36d21e8 | ||
|
|
c51435c114 | ||
|
|
2a7f1780b4 | ||
|
|
98a44e40fb | ||
|
|
65cf6fa9a1 | ||
|
|
b2e32d1720 | ||
|
|
f0bfedbe8e | ||
|
|
4a73484603 | ||
|
|
03b380f90b | ||
|
|
a2bd3b2dfe | ||
|
|
56fe140ebf |
1
.github/workflows/integration_testing.yml
vendored
1
.github/workflows/integration_testing.yml
vendored
@@ -13,7 +13,6 @@ jobs:
|
||||
python-version: ["3.7", "3.8", "3.9", "3.10"]
|
||||
os: [ubuntu-20.04]
|
||||
include:
|
||||
# TODO: Update to 3.10 when all packages are available, currently lxml is missing
|
||||
- name: macOS
|
||||
os: macos-latest
|
||||
python-version: "3.10"
|
||||
|
||||
4
PKG-INFO
4
PKG-INFO
@@ -1,7 +1,7 @@
|
||||
Metadata-Version: 1.0
|
||||
Name: SABnzbd
|
||||
Version: 3.5.1
|
||||
Summary: SABnzbd-3.5.1
|
||||
Version: 3.5.3
|
||||
Summary: SABnzbd-3.5.3
|
||||
Home-page: https://sabnzbd.org
|
||||
Author: The SABnzbd Team
|
||||
Author-email: team@sabnzbd.org
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
Release Notes - SABnzbd 3.5.1
|
||||
Release Notes - SABnzbd 3.5.3
|
||||
=========================================================
|
||||
|
||||
## Bugfix since 3.5.0
|
||||
- Prevent disk errors due to Direct Unpack being too aggressive.
|
||||
- URL's waiting to fetch get stuck indefinitely upon restart.
|
||||
|
||||
## Changes and bugfixes since 3.5.0
|
||||
- Prevent permissions errors on systems that do not support them.
|
||||
- Small changes in file assembly and Direct Unpack processing.
|
||||
|
||||
@@ -302,8 +302,8 @@
|
||||
<option value="M" <!--#if $filter[3]=="M" then 'selected="selected"' else ""#-->> $T('rss-must')</option>
|
||||
<option value="R" <!--#if $filter[3]=="R" then 'selected="selected"' else ""#-->> $T('rss-reject')</option>
|
||||
<option value="C" <!--#if $filter[3]=="C" then 'selected="selected"' else ""#-->> $T('rss-mustcat')</option>
|
||||
<option value=">" <!--#if $filter[3]==">" then 'selected="selected"' else ""#-->> $T('rss-atleast')</option>
|
||||
<option value="<" <!--#if $filter[3]=="<" then 'selected="selected"' else ""#-->> $T('rss-atmost')</option>
|
||||
<option value=">" <!--#if $filter[3]==">" then 'selected="selected"' else ""#-->> $T('rss-atleast')</option>
|
||||
<option value="<" <!--#if $filter[3]=="<" then 'selected="selected"' else ""#-->> $T('rss-atmost')</option>
|
||||
<option value="F" <!--#if $filter[3]=="F" then 'selected="selected"' else ""#-->> $T('rss-from')</option>
|
||||
<option value="S" <!--#if $filter[3]=="S" then 'selected="selected"' else ""#-->> $T('rss-from-show') ($T('rss-accept'))</option>
|
||||
</select>
|
||||
|
||||
@@ -191,9 +191,13 @@ class Assembler(Thread):
|
||||
else:
|
||||
logging.error(T("Disk error on creating file %s"), clip_path(filepath))
|
||||
# Log traceback
|
||||
logging.info("Traceback: ", exc_info=True)
|
||||
if sabnzbd.WIN32:
|
||||
logging.info("Winerror: %s", hex(ctypes.windll.ntdll.RtlGetLastNtStatus() + 2**32))
|
||||
logging.info(
|
||||
"Winerror: %s - %s",
|
||||
err.winerror,
|
||||
hex(ctypes.windll.ntdll.RtlGetLastNtStatus() + 2**32),
|
||||
)
|
||||
logging.info("Traceback: ", exc_info=True)
|
||||
# Pause without saving
|
||||
sabnzbd.Downloader.pause()
|
||||
else:
|
||||
|
||||
0
sabnzbd/deobfuscate_filenames.py
Executable file → Normal file
0
sabnzbd/deobfuscate_filenames.py
Executable file → Normal file
@@ -352,10 +352,10 @@ class DirectUnpacker(threading.Thread):
|
||||
return False
|
||||
|
||||
def wait_for_next_volume(self):
|
||||
"""Wait for the correct volume to appear
|
||||
But stop if it was killed or the NZB is done
|
||||
"""Wait for the correct volume to appear but stop if it was killed
|
||||
or the NZB is in post-processing and no new files will be downloaded.
|
||||
"""
|
||||
while not self.have_next_volume() and not self.killed and self.nzo.files:
|
||||
while not self.have_next_volume() and not self.killed and not self.nzo.pp_active:
|
||||
with self.next_file_lock:
|
||||
self.next_file_lock.wait()
|
||||
|
||||
|
||||
@@ -681,7 +681,7 @@ def _get_link(entry):
|
||||
|
||||
# GUID usually has URL to result on page
|
||||
infourl = None
|
||||
if entry.get("id") and entry.id != link and entry.id.startswith("http"):
|
||||
if entry.get("id") and entry.id != link and entry.id.lower().startswith("http"):
|
||||
infourl = entry.id
|
||||
|
||||
if size == 0:
|
||||
@@ -716,7 +716,7 @@ def _get_link(entry):
|
||||
except (KeyError, IndexError):
|
||||
season = episode = 0
|
||||
|
||||
if link and "http" in link.lower():
|
||||
if link and link.lower().startswith("http"):
|
||||
try:
|
||||
category = entry.cattext
|
||||
except AttributeError:
|
||||
|
||||
@@ -63,8 +63,6 @@ class URLGrabber(Thread):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.queue: queue.Queue[Tuple[Optional[str], Optional[NzbObject]]] = queue.Queue()
|
||||
for url_nzo_tup in sabnzbd.NzbQueue.get_urls():
|
||||
self.queue.put(url_nzo_tup)
|
||||
self.shutdown = False
|
||||
|
||||
def add(self, url: str, future_nzo: NzbObject, when: Optional[int] = None):
|
||||
@@ -87,7 +85,11 @@ class URLGrabber(Thread):
|
||||
self.queue.put((None, None))
|
||||
|
||||
def run(self):
|
||||
self.shutdown = False
|
||||
# Read all URL's to grab from the queue
|
||||
for url_nzo_tup in sabnzbd.NzbQueue.get_urls():
|
||||
self.queue.put(url_nzo_tup)
|
||||
|
||||
# Start fetching
|
||||
while not self.shutdown:
|
||||
# Set NzbObject object to None so reference from this thread
|
||||
# does not keep the object alive in the future (see #1628)
|
||||
@@ -403,7 +405,7 @@ def add_url(
|
||||
password: Optional[str] = None,
|
||||
):
|
||||
"""Add NZB based on a URL, attributes optional"""
|
||||
if "http" not in url:
|
||||
if not url.lower().startswith("http"):
|
||||
return
|
||||
if not pp or pp == "-1":
|
||||
pp = None
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
|
||||
# You MUST use double quotes (so " and not ')
|
||||
|
||||
__version__ = "3.5.1"
|
||||
__baseline__ = "4b74aab335001a56c62440a8aa47cba510ecb3fa"
|
||||
__version__ = "develop"
|
||||
__baseline__ = "unknown"
|
||||
|
||||
@@ -7,7 +7,6 @@ pytest-httpbin
|
||||
pytest-httpserver
|
||||
flaky
|
||||
xmltodict
|
||||
tavern<1.16.2; python_version == '3.6'
|
||||
tavern; python_version > '3.6'
|
||||
tavern
|
||||
tavalidate
|
||||
lxml>=4.5.0 # needed by tavalidate
|
||||
|
||||
Reference in New Issue
Block a user