NZBGet Changelog

What's new in NZBGet 20.0

Jun 17, 2018
  • significantly improved logging performance, especially in debug builds (#466);
  • par-check prints par2 creator application to help identify creator app issues (#467);
  • added support for Unix domain sockets (POSIX only) (#400);
  • better error handling when fetching rss feeds (#416);
  • enabled functional tests on Travis CI (#443);
  • better username/password validation when testing connection on settings page (#433);
  • improved rar-renamer to better handle certain cases (#442);
  • new option "SkipWrite" for easier speed tests;
  • support for redirect codes 303, 307 and 308 in web-client for fetching of rss feeds and nzb-files (#420);
  • installer for FreeBSD is now built using Clang instead of GCC; this fixes incompatibility with FreeBSD 11 (#425):
  • universal Linux installer can now be used on FreeBSD (via Linux compatibility mode) (#423);
  • updated unrar to v5.50;
  • more robust news server connection test (#471);
  • changed default location of log-file (#455);
  • better handling of broken connections (#460);
  • removed obsolete or less useful options "SaveQueue", "ReloadQueue", "TerminateTimeout", "AccurateRate", "BrokenLog" (#461);
  • renamed option "LogBufferSize" to "LogBuffer" (#461);
  • passwords of failed login attempts are no longer printed to log to improve security (#496);
  • cookies in web interface are now saved with "httpOnly" attribute to improve security (#485);
  • titles and duplicates keys in duplicate check are now case insensitive (#477);
  • added LibreSSL support (#497);
  • web interface now has a better icon for favorites or home screen of mobile devices (#483);
  • improved duplicate detection for obfuscated downloads having files with same subjects (#547);
  • direct rename and direct unpack are now active by default on new installations, except for slow Linux systems (#548);
  • added advice for letsencrypt in option descriptions (#546);
  • fixed incorrect renaming in rar-renamer which could cause some downloads to fail (#509);
  • fixed race condition in queue script coordinator which could cause crashes (#501);
  • fixed: post-processing parameters were sometimes case sensitive causing issues (#498);
  • fixed DNS resolving issues on Android (#468);
  • fixed: backup servers not used on certain article decoding errors (#462);
  • fixed: when direct rename was active certain downloads with damaged par2-files become paused at near completion and required manual resuming (#424);
  • fixed: crash when flushing article cache after direct rename (#529);
  • fixed: deleting active par-job may crash the program (#527);
  • fixed: tests may fail on Windows due to locked files (#528);
  • fixed: unpack using password file doesn't work on Windows (#412);
  • fixed: compiler error when building using GnuTLS (#414);
  • fixed: Linux installer failure on android emulator (#417);
  • fixed: options formatted as password fields when they shouldn't (#426);
  • fixed: slightly off article statistics after direct rename (#430);
  • fixed: NServ terminated if client interrupted connection (#431);
  • fixed: example pp-scripts may not work properly if nzbget password or username contained special characters (#452, #453);
  • fix in functional tests to not rely on sizes of externally generated files (#437);
  • fixed: option AuthorizedIP did not work with IPv6 addresses (#439);
  • fixed crash on certain malformed articles (#533);
  • fixed logging of IPv6 addresses (#534);
  • fixed crash which could happen on Windows when reloading or terminating the program (#549).
  • massive performance optimizations in downloader (#448):
  • improved yEnc decoder (#450);
  • improved CRC32 calculation (#446);
  • processing data in one pass;
  • SIMD implementation of decoder and CRC functions on x86 and ARM CPUs; SIMD code relies on node-yencode library by Anime Tosho (#454);
  • overall performance improvement up to +500% on x86 and +250% on ARM (better speed or less CPU usage);
  • for details see Benchmarks;
  • performance optimizations in web-interface (#421):
  • reduced number of requests when loading webui by combining all javascript-files into one and all css-files into one;
  • reduced load time by calling multiple API-methods simultaneously;
  • extensive use of browser caching for static files significantly reduces the amount of data transferred on webui initialisation;
  • extensive use of browser caching for API requests reduces the amount of data transferred during webui status updates, especially when nzbget is in idle state and there are no changes in download queue or history;
  • avoid work in browser on status updates if there are no changes in download queue or history;
  • support for keep alive connections significantly reduces overhead for establishing connections on webui status updates, especially when connecting to nzbget via TLS/SSL (avoiding TLS handshakes);
  • a number of performance optimizations for large download queue with thousands of items (#438):
  • much faster loading of queue from disk greatly improves program start up time;
  • improved queue management for faster download speed;
  • automatic update check (#440):
  • new option "UpdateCheck" to check for stable or testing versions (or disable);
  • when a new version is found a notification is shown;
  • the update check is enabled by default for stable versions;
  • updated POSIX build files to newer autotools version (#418):
  • compatibility with newer autotools;
  • compatibility with newer platforms such as aarch64;
  • enhancements in NServ:
  • memory cache to reduce disk load during speed tests - new command line switch “-m” (#448);
  • speed control - new command line switches “-w“ and “-r” (#451);
  • show IP address of incoming connection in NServ (#536);

New in NZBGet 20.0 R2108 Test (Sep 19, 2017)

  • enabled functional tests on Travis CI (#443);
  • better username/password validation when testing connection on settings page (#433);
  • improved rar-renamer to better handle certain cases (#442);
  • fixed: filter buttons don't work in history (#421, #434);
  • fix in functional tests to not rely on sizes of externally generated files (#437);
  • fixed: option AuthorizedIP did not work with IPv6 addresses (#439);
  • fixed SSL in built-in web-server got broken in the latest testing release (#431);
  • a number of performance optimizations for large download queue with thousands of items (#438):
  • much faster loading of queue from disk greatly improves program start up time;
  • improved queue management for faster download speed;
  • automatic update check (#440):
  • new option UpdateCheck to check for stable or testing versions (or disable);
  • when a new version is found a notification is shown;
  • the update check is enabled by default for stable versions;

New in NZBGet 20.0 R2075 Test (Sep 8, 2017)

  • added support for Unix domain sockets (POSIX only) (#400);
  • better error handling when fetching rss feeds (#416);
  • support for redirect codes 303, 307 and 308 in web-client for fetching of rss feeds and nzb-files (#420);
  • installer for FreeBSD is now built using Clang instead of GCC; this fixes incompatibility with FreeBSD 11 (#425):
  • universal Linux installer can now be used on FreeBSD (via Linux compatibility mode) (#423);
  • updated unrar to v5.50 (#410);
  • fixed: when direct rename was active certain downloads with damaged par2-files become paused at near completion and required manual resuming (#424);
  • fixed: unpack using password file doesn't work on Windows (#412);
  • fixed: compiler error when building using GnuTLS (#414);
  • fixed: Linux installer failure on android emulator (#417);
  • fixed: options formatted as password fields when they shouldn't (#426);
  • fixed: slightly off article statistics after direct rename (#430);
  • fixed: NServ terminated if client interrupted connection (#431).
  • performance optimizations in web-interface (#421):
  • reduced number of requests when loading webui by combining all javascript-files into one and all css-files into one;
  • reduced load time by calling multiple API-methods simultaneously;
  • extensive use of browser caching for static files significantly reduces the amount of data transferred on webui initialization;
  • extensive use of browser caching for API requests reduces the amount of data transferred during webui status updates, especially when nzbget is in idle state and there are no changes in download queue or history;
  • avoid work in browser on status updates if there are no changes in download queue or history;
  • support for keep alive connections significantly reduces overhead for establishing connections on webui status updates, especially when connecting to nzbget via TLS/SSL (avoiding TLS handshakes);
  • updated POSIX build files to newer autotools version (#418):
  • compatibility with newer autotools;
  • compatibility with newer platforms such as aarch64;

New in NZBGet 19.1 (Jul 10, 2017)

  • proper handling of changing category (and destination path) during direct unpack; direct unpack now gracefully aborts with cleanup; the files will be unpacked during post-processing stage (#408);
  • fixed: password protected downloads of certain kind may sometimes end up with no files if direct unpack was active (#405);
  • fixed: rar-renamer mistakenly renamed some encrypted rar3 files causing unnecessary repair (#406);
  • fixed: rar-renamer could not process some encrypted rar3-archives (#407).

New in NZBGet 19.0 (Jun 28, 2017)

  • unpack during downloading (#371):
  • downloaded files can now be unpacked as soon as every archive part is downloaded;
  • new option "DirectUnpack" to activate direct unpacking;
  • direct unpack works even with obfuscated downloads; option "DirectRename" (see below) must be active for that;
  • option "ReorderFiles" (see below) should be also active for optimal file download order;
  • direct unpack works for rar-archives; 7-zip archives and simply splitted files are processed by default unpack module;
  • direct unpack obviously works only for healthy download; if download is damaged the direct unpack cancels and the download is unpacked during post-processing stage after files are repaired;
  • direct unpack reduces the time needed to complete download and post-processing;
  • it also allows to start watching of video files during download (requires compatible video player software);
  • see forum topic Unpack during downloading for more info;
  • renaming of obfuscated file names during downloading (#360):
  • correct file names for obfuscated downloads are now determined during download stage (instead of post-processing stage);
  • downloaded files are saved into disk directly with correct names;
  • direct renaming uses par2-files to restore correct file names;
  • new option "DirectRename" to activate direct renaming;
  • new queue-event NZB_NAMED, sent after the inner files are renamed;
  • automatic reordering of files (#364):
  • inner files within nzb reordered to ensure download of files in archive parts order;
  • the files are reordered when nzb is added to queue;
  • if direct renaming is active (option "DirectRename") the files are reordered again after the correct names becomes known;
  • new option "ReorderFiles";
  • new command "GroupSortFiles" in api-method "editqueue";
  • new subcommand "SF" of remote command "-E/--edit";
  • TLS certificate verification (#339):
  • when connecting to a news server (for downloading) or a web server (for fetching of rss feeds and nzb-files) the authenticity of the server is validated using server security certificate. If the check fails that means the connection cannot be trusted and must be closed with an error message explaining the security issue;
  • new options "CertCheck" and "CertStore";
  • official NZBGet packages come with activated certificate check;
  • when updating from an older NZBGet version the option CertCheck will be automatically activated when the settings is saved (switch to Settings page in web-interface and click "Save all changed");
  • see Certificate verification for details;
  • authentication via form in web-interface as alternative to HTTP authentication (#330):
  • that must help with password tools having issues with HTTP authentication dialog;
  • new option "FormAuth";
  • drop-downs (context menus) for priority, category and status columns (#346):
  • quicker changing of priority and category;
  • easier access to actions via drop-down (context menu) in status column;
  • extensions scripts can now be executed from settings page (#50):
  • script authors define custom buttons;
  • when clicked the script is executed in a special mode and obtain extra parameters;
  • example script "Email.py" extended with button "Send test e-mail";
  • for details see Extension scripts;
  • improved continuos integration with Travis CI:
  • added gcc 4.8 to test matrix;
  • installing unrar into test system to allow unit tests requiring unrar;
  • unrar shipped within Linux package is now compiled with "fallocate" option to improve compatibility with media players when watching videos during downloading and unpacking (#379);
  • support for HTTP-header "X-Forwarded-For" in IP-logging (#331);
  • improvements in RSS feed view in phone mode (#263);
  • set name, password and dupe info when adding via URL by click on a button near URL field in web-interface (#123);
  • backup-badge for items in history similar to downloads tab (#31);
  • show backup icon in history in phone theme (#31);
  • added support for ECC certificates in built-in web-server (#353);
  • save changes before performing actions in history dialog (#346);
  • proper exit code on client command success or failure (#23).
  • added host name to all error messages regarding connection issues (#349);
  • new button "Volume Statistics" in section "News Servers" of settings page; shows the same volume data as in global statistics dialog (#352);
  • new option "ServerX.Notes" for user comments on news servers (#352);
  • new parameters for api-method "servervolumes" as a performance optimization measure to reduce amount of transferred data (#352);
  • new option to force connection to news servers via ipv4 or ipv6 (#252);
  • removed unnecessary requests to news servers (#360);
  • updated unrar to v5.40;
  • clear script execution log before executing script (#50);
  • fixed: startup scheduler tasks can be executed again (#376);
  • fixed: "fatal" messages when compiling from sources (#367).
  • fixed: per-nzb download statistics could be wrong if the program was reloaded during downloading (#378).
  • fixed crash which may happen between post-processing steps (#398);
  • fixed: asterix (*) was sometimes passed as parameter to extension scripts (Windows only) (#387);
  • fixed potential crash during update via web-interface (#386).
  • new option "FileNaming" to control how to name obfuscated files (before they get renamed by par-rename, rar-rename or direct-rename) (#361);

New in NZBGet 19.0 R2021 Test (Jun 19, 2017)

  • fixed crash which may happen between post-processing steps (#398);
  • fixed: asterix (*) was sometimes passed as parameter to extension scripts (Windows only) (#387);
  • fixed potential crash during update via web-interface (#386).
  • corrections for "direct unpack" feature (#371):
  • respect "PostStrategy" when starting another direct unpack to avoid running way too many direct unpack jobs at the same time;
  • wait for direct rename completion before starting direct unpack;
  • do not direct unpack if article decoding is disabled via option "Decode=no";
  • corrections for "direct rename" feature (#362):
  • fixed crash which may happen if articles were yEncoded with less than 68 character per line (#382);
  • do not direct rename if article decoding is disabled via option "Decode=no";

New in NZBGet 19.0 R1999 Test (May 22, 2017)

  • unrar shipped within Linux package is now compiled with "fallocate" option to improve compatibility with media players when watching videos during downloading and unpacking (#379);
  • updated unrar to v5.40;
  • better logging for direct rename (#362);
  • avoiding unnecessary renaming of par-sets (#362);
  • better cleanup on cancelling unpack (#371);
  • fixed: per-nzb download statistics could be wrong if the program was reloaded during downloading (#378).

New in NZBGet 19.0 R1991 Test (May 15, 2017)

  • unpack during downloading (#371):
  • downloaded files can now be unpacked as soon as every archive part is downloaded;
  • new option "DirectUnpack" to activate direct unpacking;
  • direct unpack works even with obfuscated downloads; option "DirectRename" (see below) must be active for that;
  • option "ReorderFiles" (see below) should be also active for optimal file download order;
  • direct unpack works for rar-archives; 7-zip archives and simply splitted files are processed by default unpack module;
  • direct unpack obviously works only for healthy download; if download is damaged the direct unpack cancels and the download is unpacked during post-processing stage after files are repaired;
  • direct unpack reduces the time needed to complete download and post-processing;
  • it also allows to start watching of video files during download (requires compatible video player software);
  • see forum topic Unpack during downloading for more info;
  • renaming of obfuscated file names during downloading (#360):
  • correct file names for obfuscated downloads are now determined during download stage (instead of post-processing stage);
  • downloaded files are saved into disk directly with correct names;
  • direct renaming uses par2-files to restore correct file names;
  • new option "DirectRename" to activate direct renaming;
  • new queue-event NZB_NAMED, sent after the inner files are renamed;
  • automatic reordering of files (#364):
  • inner files within nzb reordered to ensure download of files in archive parts order;
  • the files are reordered when nzb is added to queue;
  • if direct renaming is active (option "DirectRename") the files are reordered again after the correct names becomes known;
  • new option "ReorderFiles";
  • new command “GroupSortFiles” in api-method “editqueue”;
  • new subcommand “SF” of remote command “-E/--edit“;
  • new option "FileNaming" to control how to name obfuscated files (before they get renamed by par-rename, rar-rename or direct-rename) (#361);
  • on Windows NZBGet can now associate itself with nzb-files (#24):
  • use option in Windows installer to register NZBGet for nzb-files;
  • improved continuos integration with Travis CI:
  • added gcc 4.8 to test matrix;
  • installing unrar into test system to allow unit tests requiring unrar;
  • new button “Volume Statistics” in section “News Servers” of settings
  • page; shows the same volume data as in global statistics dialog (#352);
  • new option "ServerX.Notes" for user comments on news servers (#352);
  • new parameters for api-method "servervolumes" as a performance optimization measure to reduce amount of transferred data (#352);
  • removed unnecessary requests to news servers (#360);
  • show backup icon in history in phone theme (#31);
  • clear script execution log before executing script (#50);
  • fixed: startup scheduler tasks can be executed again (#376);
  • fixed crash during download caused by a race condition (#356);
  • fixed: sleep mode no longer works on Windows (#350);
  • fixed: queue was not saved after deleting of queued post-jobs (#348);
  • fixed: possible crash at the end of post-processing (#347);
  • fixed: "undefined" in reorder extension scripts when editing option “ScriptOrder” in web-interface (#338);
  • fixed: "fatal" messages when compiling from sources (#367).

New in NZBGet 18.1 (Apr 8, 2017)

  • fixed: crash during download, caused by a race condition (#356);
  • fixed: sleep mode did not work on Windows (#350);
  • fixed: queue was not saved after deleting of queued post-jobs (#348);
  • fixed: possible crash at the end of post-processing (#347);
  • fixed: "undefined" in reorder extension scripts (#338).

New in NZBGet 19.0 R1929 Test (Apr 1, 2017)

  • added support for ECC certificates in built-in web-server (#353);
  • save changes before performing actions in history dialog (#346);
  • added host name to all error messages regarding connection issues (#349);
  • fixed: changing category via drop-down in download list didn't change pp-parameters (#346);
  • fixed crash during download caused by a race condition (#356);
  • fixed possible crash at the end of post-processing (#347);
  • fixed: queue was not saved after deleting of queued post-jobs (#348);
  • extensions scripts can not be executed from settings page (#50):
  • script authors define custom buttons;
  • when clicked the script is executed in a special mode and obtain extra parameters;
  • example script Email.py extended with button "Send test e-mail";
  • for details see updated wiki-page Extension-scripts;

New in NZBGet 19.0 R1914 Test (Mar 14, 2017)

  • improvements in RSS feed view in phone mode (#263);
  • set name, password and dupe info when adding via URL by click on a button near URL field in web-interface (#123);
  • backup-badge for items in history similar to downloads tab (#31);
  • proper exit code on client command success or failure (#23).
  • drop-downs (context menus) for priority, category and status columns (#346):
  • quicker changing of priority and category;
  • easier access to actions via drop-down (context menu) in status column;

New in NZBGet 19.0 R1903 Test (Feb 28, 2017)

  • support for HTTP-header "X-Forwarded-For" in IP-logging (#331);
  • fixed "undefined" in reorder extension scripts (#338);
  • fixed compile error under gcc 4.8.
  • TLS certificate verification (#339):
  • when connecting to a news server (for downloading) or a web server (for fetching of rss feeds and nzb-files) the authenticity of the server is validated using server security certificate. If the check fails that means the connection cannot be trusted and must be closed with an error message explaining the security issue;
  • new options CertCheck and CertStore;
  • official NZBGet packages come with activated certificate check;
  • when updating from an older NZBGet version the option CertCheck will be automatically activated when the settings is saved (switch to Settings page in web-interface and click "Save all changed");
  • see http://nzbget.net/Certificate_verification for details;
  • authentication via form in web-interface as alternative to HTTP authentication (#330):
  • that must help with password tools having issues with HTTP authentication dialog;
  • new option FormAuth;

New in NZBGet 18.0 (Feb 13, 2017)

  • automatic deobfuscation of rar-archives without par-files (#288):
  • obfuscated downloads not having par-files can now be successfully unpacked;
  • also helps with downloads where rar-files were obfuscated before creating par-files;
  • new options "RarRename" and “UnpackIgnoreExt”;
  • multi post-processing (#291):
  • in addition to classic post-processing strategy where items are processed one after another it is now possible to post-process multiple items at the same time;
  • new option "PostStrategy" to choose from four: sequential, balanced, aggressive, rocket;
  • in "balanced" strategy downloads needing repair do not block other items which are processed sequentially but simultaneously with repairing item;
  • in "aggressive" mode up to three items are post-processed at the same time and in "rocket" mode up to six items (including up to two repair tasks);
  • unified extension scripts settings (#319):
  • options "PostScript", "QueueScript", "ScanScript" and "FeedScript" were replaced with one option "Extensions";
  • users don't need to know the technical details of extension scripts as all scripts are now can be selected at one place;
  • easier activation of complex extension scripts which previously needed to be selected in multiple options for their proper work;
  • reordering download queue with drag and drop in web-interface (#301):
  • new actions “GroupMoveBefore” and “GroupMoveAfter” in API-method “editqueue”;
  • priorities are now displayed as a column instead of badge; that makes it possible to manually sort on priority by clicking on column title (#286);
  • removed vertical lines in tables; looks better in combination with new priority column (#286);
  • keyboard shortcuts in web-interface (#242):
  • see Keyboard shortcuts;
  • improved UI to prevent accidental deletion of many items (#282):
  • visual indication of records selected on other pages;
  • extra warning when deleting many records from history;
  • additional options in "custom pause dialog" (#29, #278);
  • better handing of damaged par2-files in par-renamer (#327):
  • if par-renamer can’t load a (damaged) par2-file then another par2-file is downloaded and par-renamer tries again;
  • better handling of obfuscated par-files (#313);
  • splitted option "Retries" into "ArticleRetries" and "UrlRetries"; option "RetryInterval" into "ArticleInterval" and "UrlInterval" (#306);
  • scheduler tasks can be started at program launch (#304):
  • use asterisk as TaskX.Time;
  • graceful termination of scheduler scripts (#304):
  • scripts receive signal SIGINT (CTRL+BREAK on Windows) before termination;
  • added support for nZEDb attributes in rss feeds (#275);
  • better cleanup handling: if parameter "unpack" is disabled for an nzb-file the cleanup isn't performed for it (#249);
  • fields containing passwords are now displayed as protected fields (#49, #260);
  • showing password-badge for nzbs with passwords (#274, #285);
  • allow control of what tab is shown when opening web-interface (#277):
  • add “#downloads”, “#history”, “#messages” or “#settings” to the URL, for example “http://localhost:6789/#history” or “http://localhost:6789/index.html#history”;
  • functional testing to ensure program quality (#279):
  • implemented built-in simple nntp server to be used for functional testing;
  • created a number of tests;
  • new features come with additional tests;
  • can also be used for speed tests - see Performing speed tests;
  • improved API-method "append" in combination with duplicate check; method returns nzb-id also for items added straight to history (#284);
  • removed parameter "offset" from api-method "editqueue" (#299):
  • when needed the “offset” is now passed within parameter “Args” as string;
  • old method signature is supported for compatibility;
  • improved error reporting on feed parse errors (#281);
  • highlighting selected rows with alternative colors (#276 , #280);
  • improved selecting of par2-file for repair (#329);
  • splitted config section "Download Queue" and moved many options into new section “Connection”;
  • disabled SSLv3 in built-in web-server (#295);
  • multiple recipients in the example pp-script “EMail.py” (#309);
  • added compatibility with openssl 1.1.0 (#298);
  • fixed TLS handshake error when using GnuTLS (#271);
  • fixed: sorting of selected items may give wrong results (#300);
  • fixed: search box filter in feed view were not reset (#315).

New in NZBGet 18.0 R1865 Test (Jan 28, 2017)

  • better handing of damaged par2-files in par-renamer (#327):
  • if par-renamer can’t load a (damaged) par2-file then another par2-file is downloaded and par-renamer tries again;
  • reverted non-strict par2-filename matching to handle article subjects with non-parseable filenames;
  • allow control of what tab is shown when opening web-interface (#277):
  • add “#downloads”, “#history”, “#messages” or “#settings” to the URL, for example “http://localhost:6789/#history” or “http://localhost:6789/index.html#history”;
  • improved selecting of par2-file for repair (#329);
  • added option "-b" to specify on which address NServ should listen (#328);
  • added check if specified data-dir is an existing directory when starting Nserv (#324, #325);
  • fixed automatic changing of pp-scripts when changing category in web-interface (#319).

New in NZBGet 18.0 R1858 Test (Dec 29, 2016)

  • better handling of obfuscated par-files (#313);
  • rar-renamer now skips downloads which have unpack disabled (#288);
  • corrected responses in built-in nntp server (#320, #321);
  • fixed enter-key in feed filter dialog (#242);
  • fixed: search box filter in feed view were not reset (#315);
  • fixed incompatibility with macOS El Capitan and Xcode 7/8 occurred in the last testing release;
  • corrected option descriptions (#312).
  • unified extension scripts settings (#319):
  • options "PostScript", "QueueScript", "ScanScript" and "FeedScript" were replaced with one option "Extensions";
  • users don't need to know the technical details os extension scripts as all scripts are now can be selected at one place;
  • easier activation of complex extension scripts which previously needed to be selected in multiple options for their proper work;
  • improved UI to prevent accidental deletion of many items (#282):
  • visual indication of records selected on other pages;
  • extra warning when deleting many records from history;

New in NZBGet 18.0 R1841 Test (Nov 21, 2016)

  • disabled SSLv3 in built-in web-server (#295);
  • multiple recipients in the example pp-script “EMail.py” (#309);
  • fixed incorrect renaming of archives containing directory entries (#288);
  • fixed: sorting of selected items may give wrong results (#300);
  • fixed: rar tests fail with TLS disabled (#303).
  • added compatibility with openssl 1.1.0 (#298);
  • splitted option "Retries" into "ArticleRetries" and "UrlRetries"; option "RetryInterval" into "ArticleInterval" and "UrlInterval" (#306);
  • reordering download queue with drag and drop in web-interface (#301):
  • new actions “GroupMoveBefore” and “GroupMoveAfter” in API-method “editqueue”;
  • keyboard shortcuts in web-interface (#242):
  • see Keyboard shortcuts;
  • cache support in built-in nntp server (#279):
  • reduces CPU usage during speed tests;
  • see Performing speed tests;
  • removed parameter "offset" from api-method "editqueue" (#299):
  • when needed the “offset” is now passed within parameter “Args” as string;
  • old method signature is supported for compatibility;
  • scheduler tasks can be started at program launch (#304):
  • use asterisk as TaskX.Time;
  • graceful termination of scheduler scripts (#304):
  • scripts receive signal SIGINT (CTRL+BREAK on Windows) before termination;

New in NZBGet 18.0 Test (Oct 23, 2016)

  • priorities are now displayed as a column instead of badge; that makes it possible to manually sort on priority (#286);
  • removed vertical lines in tables; looks better in combination with new priority column (#286);
  • additional options in "custom pause dialog" (#29, #278);
  • added support for nZEDb attributes in rss feeds (#275);
  • better cleanup handling: if parameter "unpack" is disabled for an nzb-file the cleanup isn't performed for it (#249);
  • fields containing passwords are now displayed as protected fields (#49, #260);
  • password-badge for nzbs with passwords (#274, #285);
  • improved API-method "append" in combination with duplicate check; method returns nzb-id also for items added straight to history (#284);
  • improved error reporting on feed parse errors (#281);
  • highlighting selected rows with alternative colors (#276 , #280);
  • splitted config section "Download Queue" and moved many options into new section “Connection”;
  • fixed TLS handshake error when using GnuTLS (#271);
  • automatic deobfuscation of rar-archives without par-files (#288):
  • obfuscated downloads not having par-files can now be successfully unpacked;
  • also helps with downloads where rar-files were obfuscated before creating par-files;
  • new options "RarRename" and “UnpackIgnoreExt”;
  • multi post-processing (#291):
  • in addition to classic post-processing strategy where items are processed one after another it is now possible to post-process multiple items at the same time;
  • new option "PostStrategy" to choose from four: sequential, balanced, aggressive, rocket;
  • in "balanced" strategy downloads needing repair do not block other items which are processed sequentially but simultaneously with repairing item;
  • in "aggressive" mode up to three items are post-processed at the same time and in "rocket" mode up to six items (including up to two repair tasks);
  • functional testing to ensure program quality (#279):
  • implemented built-in simple nntp server to be used for functional testing;
  • created a number of initial tests;
  • new features come with additional tests;

New in NZBGet 17.1 (Sep 6, 2016)

  • adjustments and fixes for "Retry failed articles" function, better handling of certain corner cases (#253);
  • partial compatibility with gcc 4.8 (#256);
  • removed unnecessary debug logging to javascript console (#245);
  • improved error reporting on certain file operations (#136);
  • corrected option description (#162);
  • corrected text in history delete confirmation dialog (#224);
  • fixed performance issue on certain Windows systems (#251);
  • fixed: root drive paths on Windows could not be used (for example “NzbDir=N:”) (#247);
  • fixed hanging after marking as BAD from queue script (#261);
  • fixed: old nzbget.exe was deleted even when installing into a new directory (Windows only) (#254);
  • fixed: compilation error if configured with unit tests but without par-module (#255);
  • fixed crash on malformed articles (#262);
  • fixed javascript error on Chrome for Linux (#86);
  • fixed compilation error if configured without TLS (#265).

New in NZBGet 17.1 Pre (Aug 15, 2016)

  • adjustments and fixes for "Retry failed articles" function, better handling of certain corner cases (#253);
  • partial compatibility with gcc 4.8 (#256);
  • fixed performance issue on certain Windows systems (#251);
  • fixed: root drive paths on Windows could not be used (for example “NzbDir=N:”) (#247);
  • fixed hanging after marking as BAD from queue script (#261);
  • fixed: old nzbget.exe was deleted even when installing into a new directory (Windows only) (#254);
  • fixed: compilation error if configured with unit tests but without par-module (#255);
  • fixed crash on malformed articles (#262);
  • improved error reporting on certain file operations (#136);
  • corrected option description (#162).

New in NZBGet 17.0 (Jul 27, 2016)

  • added support for tvdbid and tvmazeid in rss feeds (#132);
  • added button to save nzb-log into a file directly from web-ui (#108);
  • queue-scripts can now change destination after download is completed and before unpack (#162);
  • queue-scripts save messages into nzb-log (#163);
  • new queue script event NZB_MARKED; new env var NZBNA_MARKSTATUS is passed to queue scripts (#225);
  • showing number of selected items in confirmation box when deleting or performing other actions on multiple items in web-interface (#98);
  • allowing character “=“ in dupe-badges (#97);
  • par-check doesn't ignore files from option ExtCleanupDisk anymore; only files listed in option ParIgnoreExt are ignored (#147);
  • printing low-level messages from par2-module (as DETAIL) (#161);
  • option ScriptDir now accepts multiple directories (#181);
  • hidden files and directories are now ignored by the scanner of incoming nzb directory (#141);
  • improved error reporting on DNS lookup errors (#146);
  • improved POSIX configure script - now using pkg-config for all required libraries (#192);
  • improved Windows installer - scripts are now installed into a subdirectory of default "MainDir" (C:ProgramDataNZBGetscripts) instead of program's directory (#145);
  • separated disk state files for queue and history for better performance (#207);
  • automatically removing orphaned diskstate files from QueueDir (#121);
  • improved replacing of invalid characters in file names in certain cases (#209);
  • added support for file names with reserved words on Windows (#210);
  • improved tray icon (Windows) to look better on a dark background (#66);
  • feed scripts are now expected to return exit codes (#203);
  • fixed: splitted files were not always joined (#201);
  • path to original queued nzb-file is now passed to scripts (#231);
  • moved option FeedX.Interval upwards (#230);
  • fixed check for reserved characters in file names (Windows) (#227);
  • fixed: wrong encoding in file names of downloaded files (#137);
  • fixed: queue-scripts not called for failed URLs if the scripts were set in category’s option PostScript (#171);
  • fixed: crash when executing command --printconfig (#174);
  • fixed: error messages when trying to delete intermediate directory on Windows (#180);
  • fixed: web-ui didn't load in Chrome on iOS (#178);
  • text corrections in web-interface (#236);
  • updated option descriptions (#158, #212, #217, #218).
  • added support for SNI in TLS/SSL (#223);
  • built-in web-server can now use certificate chain files through option SecureCert, when compiled using OpenSSL (#110);
  • better error reporting when using GnuTLS (#120);
  • new option ShellOverride allows to configure path to python, bash, etc.; useful on systems with non-standard paths; eliminating the need to change shebang for every script; also makes it possible to put scripts on non-exec file systems (#107);
  • reduced disk fragmentation in direct write mode on Windows; this improves unpack speed (#195);
  • news servers can now be configured as optional; marking server as optional tells NZBGet to ignore this server if a connection to this server cannot be established (#155);
  • added several settings to change behavior of web-interface, new section WEB-INTERFACE on settings page (#206);
  • reworked the full source code base to utilize modern C++ features (#88):
  • with the main motivation to make the code nicer and more fun to work with;
  • to compile NZBGet from source a compiler supporting C++14 is required, see Prerequisites for C++ compiler;
  • most users don't have to compile on their own and can use official installers offered on download page;
  • for a detailed list of internal changes see milestone Modern C++;
  • now offering an official installer for FreeBSD (#124):
  • automatic installation;
  • built-in update via web-interface;
  • currently supporting only x86_64 CPU architecture;
  • full support for Unicode and extra long file paths (more than 260 characters) on Windows including (#136, #127, #91):
  • downloading;
  • par-verifcation and -repair;
  • par-rename (deobfuscation);
  • unpacking;
  • post-processing;
  • added download volume quota management (#99):
  • new options MonthlyQuota, QuotaStartDay, DailyQuota;
  • downloading is suspended when the quota is reached and automatically resumed when the next billing period starts (month or day);
  • new fields in RPC-method status: MonthSizeLo, MonthSizeHi, MonthSizeMB, DaySizeLo, DaySizeHi, DaySizeMB, QuotaReached. MonthSizes are related to current billing month taking option QuotaStartDay into account;
  • download volume for “this month” shown in web-interface in statistics dialog shows data for current billing month (taking option QuotaStartDay into account);
  • remaining time is shown in orange when the quota is reached;
  • dialog “statistics and status” may show extra row “Download quota: reached”;
  • new function Retry failed articles in history (#205):
  • failed downloads can be now tried again but in contrast to command "Download again" only failed articles are downloaded whereas successfully downloaded pieces are reused;
  • new command HistoryRetryFailed of RPC-method editqueue;
  • new subcommand F of command line switch -E/--edit for history;
  • reworked behavior regarding deleting already downloaded files when deleting downloads from queue (#224):
  • in order to better work together with the new Retry failed articles-feature;
  • removed option DeleteCleanupDisk;
  • in the Delete downloads confirmation dialog now allowing user to decide if the already downloaded files must be deleted or not;
  • option HealthCheck extended with new possible value Park;
  • remote command GroupDelete now always delete already downloaded files;
  • new remote command GroupParkDelete keeps already downloaded files;
  • new subcommand DP of console command --edit/-E to delete download from queue and keep already downloaded files;
  • showing various status info in browser window title (#197):
  • number of downloads, current speed, remaining time, pause state;
  • new option WindowTitle;

New in NZBGet 17.0 R1735 Test (Jul 11, 2016)

  • added support for SNI in TLS/SSL (#223);
  • path to original queued nzb-file is now passed to scripts (#231);
  • fixed: umlauts or non-ASCII characters in download names were replaced with underscores (#234);
  • fixed: very long log messages were not read properly from disk (#235);
  • moved option "FeedX.Interval" upwards (#230);
  • fixed check for reserved characters in file names (Windows) (#227);
  • fixed typo in web-interface (#236);
  • prevent errors when pressing ENTER in web-interface (#237).

New in NZBGet 17.0 R1726 Test (Jun 6, 2016)

  • new queue script event NZB_MARKED; new env var NZBNA_MARKSTATUS is passed to queue scripts (#225);
  • fixed crash in queue script handling (bug introduced in v17) (#148);
  • fixed: web-interface setting to disable animation on play/pause button didn't work (bug introduced in v17) (#222);
  • fixed: default web-interface settings were not properly set, all boolean settings were set to “off” (bug introduced in v17) (#206);
  • fixed crash when "Download Again" URL (bug introduced in v17) (#205);
  • reworked options to delete already downloaded files when deleting downloads from queue (#224):
  • removed settings DeleteCleanupDisk and HistoryCleanupDisk;
  • in the Delete downloads confirmation dialog allowing user to decide if the already downloaded files must be deleted or not;
  • option HealthCheck extended with new possible value Park; Health check now offers: Delete - to move download into history and delete already downloaded files; and Park - to move download into history and keep already downloaded files;
  • remote command GroupDelete now always delete already downloaded files;
  • new remote command GroupParkDelete keeps already downloaded files;
  • new subcommand DP of console command --edit/-E to delete download from queue and keep already downloaded files;

New in NZBGet 17.0 R1716 Test (May 23, 2016)

  • separate disk state files for queue and history for better performance (#207);
  • improved replacing of invalid characters in file names in certain cases (#209);
  • automatically removing orphaned diskstate files from QueueDir (#121);
  • added support for file names with reserved words on Windows (#210);
  • added several settings to change behavior of web-interface, new section "WEB-INTERFACE" on settings page (#206);
  • improved tray icon (Windows) to look better on a dark background (#66);
  • corrected option descriptions (#212, #217, #218);
  • feed scripts must now return exit codes (#203);
  • fixed: splitted files were not always joined (#201);
  • fixed possible crash when canceling download and having option “DirectWrite” disabled (bug introduced v17) (#136);
  • fixed crash on feed fetch failure (Windows) (bug introduced v17) (#136);
  • showing various status info in browser window title (#197):
  • number of downloads, current speed, remaining time, pause state;
  • new option "WindowTitle";
  • added download volume quota management (#99):
  • new options “MonthlyQuota”, “QuotaStartDay”, “DailyQuota”;
  • downloading is suspended when the quota is reached and automatically resumed when the next billing period starts (month or day);
  • new fields in RPC-method “status”: MonthSizeLo, MonthSizeHi, MonthSizeMB, DaySizeLo, DaySizeHi, DaySizeMB, QuotaReached. MonthSizes are related to current billing month taking option “QuotaStartDay” into account;
  • download volume for “this month” shown in web-interface in statistics dialog shows data for current billing month (taking option “QuotaStartDay” into account);
  • remaining time is shown in orange when the quota is reached;
  • dialog “statistics and status” may show extra row “Download quota: reached”;
  • new function "Retry failed articles" in history (#205):
  • failed downloads can be now tried again but in contrast to command "Download again" only failed articles are downloaded whereas successfully downloaded pieces are reused;
  • to be able to retry downloads which were deleted by health check the option "DeleteCleanupDisk" must be disabled (otherwise the downloaded files are deleted and download cannot be retried);
  • new option "HistoryCleanupDisk" to independently configure history deletion behavior which previously were controlled by option "DeleteCleanupDisk";
  • new command “HistoryRetryFailed” of RPC-method “editqueue”;
  • new subcommand “F” of command line switch “-E/--edit” for history;

New in NZBGet 17.0 R1686 Test (Apr 11, 2016)

  • improved support for extra long file paths on Windows (more than 260 characters) - forcing extended paths when unpacking (#136, #127);
  • new option "ShellOverride" allows to configure path to python (bash, etc.); useful on systems with non-standard paths; eliminating the need to change shebang for every script; also makes it possible to put scripts on non-exec file systems (#107);
  • reduced disk fragmentation in direct write mode on Windows; this improves unpack speed (#195);
  • news servers can now be configured as optional; marking server as optional tells NZBGet to ignore this server if a connection to this server cannot be established (#155);
  • improved POSIX configure script - now using pkg-config for all required libraries (#192);
  • improved Windows installer - scripts are now installed into a subdirectory of default "MainDir" (C:\ProgramData\NZBGet\scripts) instead of program's directory (#145);
  • fixed crash during download (bug introduced in v17) (#190);
  • fixed several thread synchronization issues (bug introduced in v17) (#193);
  • fixed: unpack destination path was sometimes incorrect (bug introduced in v17) (#162);
  • fixed: high CPU usage after downloading of certain nzbs (bug introduced in v17) (#172);
  • fixed: scripts may hang during startup (bug introduced in v17) (#194).

New in NZBGet 17.0 R1660 Test (Mar 21, 2016)

  • full support for Unicode and extra long file paths (more than 260 characters) on Windows (#136, #127, #91);
  • added support for tvdbid and tvmazeid in rss feeds (#132);
  • added button to save nzb-log into a file directly from web-ui (#108);
  • queue-scripts can now change destination after download is completed and before unpack (#162);
  • queue-scripts save messages into nzb-log (#163);
  • showing number of selected items in confirmation box when deleting or performing other actions on multiple items in web-interface (#98);
  • built-in web-server can now use certificate chain files through option “SecureCert”, when compiled using OpenSSL (#110);
  • allowing character “=“ in dupe-badges (#97);
  • par-check doesn't ignore files from option "ExtCleanupDisk" anymore; only files listed in option "ParIgnoreExt" are ignored (#147);
  • printing low-level messages from par2-module (as DETAIL) (#161);
  • option “ScriptDir” now accepts multiple directories (#181);
  • better error reporting when using GnuTLS (#120);
  • hidden files and directories are now ignored by the scanner of incoming nzb directory (#141);
  • improved error reporting on DNS lookup errors (#146);
  • fixed: wrong encoding in file names of downloaded files (#137);
  • fixed: queue-scripts not called for failed URLs if the scripts were set in category’s option “PostScript” (#171);
  • fixed: crash when executing command "--printconfig" (#174);
  • fixed: error messages when trying to delete intermediate directory on Windows (#180);
  • fixed: web-ui didn't load in Chrome on iOS (#178);
  • updated option descriptions (#158).
  • reworked the full source code base to utilize modern C++ features (#88):
  • with the main motivation to make the code nicer and more fun to work with, this ensures further development of the program;
  • to compile NZBGet from source a compiler supporting C++14 is required, see Prerequisites for C++ compiler;
  • most users don't have to compile on their own and can use official installers offered on download page;
  • for a detailed list of internal changes see milestone Modern C++;
  • now offering an official installer for FreeBSD (#124):
  • automatic installation;
  • built-in update via web-interface;
  • currently supporting only x86_64 CPU architecture;

New in NZBGet 16.4 (Dec 7, 2015)

  • fixed resource (socket) leak, which may cause “too many open files” errors with a possible crash (#118, #104);
  • fixed poor unrar performance on Mac OS X when unpacking to network shares.

New in NZBGet 16.3 (Oct 30, 2015)

  • Fixed: certain downloads may fail due to a bug in the workaround implemented in v16.2.

New in NZBGet 16.2 (Oct 24, 2015)

  • Implemented workaround to deal with malformed news server responses, which may still contain useful data. One of the major usenet provider is affected by the issue recently; the workaround fixes download failures (#100).

New in NZBGet 16.1 (Oct 19, 2015)

  • fixed issues with reverse proxies (#77);
  • fixed unpack failure on older AMD CPUs, when installed via universal Linux installer (#89);
  • fixed: when the program was started from setup the default directories were created with wrong permission (Windows only) (#95).

New in NZBGet 16.0 (Oct 12, 2015)

  • new option "FeedX.Backlog" to control the RSS feed behavior when fetched for the first time or after changing of URL or filter (#73);
  • new option "FlushQueue" ("yes" by default) to force disk cache flush when saving queue (#28);
  • quick toggle of speed limit; "Command/Control + click-on-speed-icon" toggles between "all servers active and speed-limit=none" and "servers and speed limit as in the config file" (#56);
  • new option "RequiredDir" to wait for external drives mount on boot (#21);
  • implemented cleanup for field "description" in RSS feeds to remove HTML formatting (#32);
  • hidden webui option "rowSelect" now works for feed view too (#19);
  • improved error message for password protected archives (#54);
  • increased limit for log-entries in history dialog from 1000 to 10000;
  • completion tab of download details dialog (and history details dialog) shows per servers article completion in percents; now there are also tooltips to show article counts;
  • do not reporting bad blocks for missing files (which are already reported as missing);
  • pp-script EMail.py now supports new TLS/SSL mode "Force". When active the secure communication with SMTP server is built using secure socket on connection level instead of plain connection and following switch into secure mode using SMTP-command "STARTLS". This new mode is in particular required when using GMail on port 465 (#20);
  • speed improvement in built-in web-server on Windows when serving API requests (web-interface) for very large queue or history (with thousands items);
  • better performance when deleting many items from queue at once (hundreds or thousands);
  • improved performance in web-interface when working with very large queue or history (thousands of items);
  • fixed: reporting of bad blocks for empty files could print garbage file names;
  • fixed: par-check did not work on UNC paths (Windows only) (#74);
  • fixed: config error messages were not printed to log or screen but only to stdout, where users typically don’t see them (#61);
  • fixed: incorrect reading of UrlStatus from diskstate (#70);
  • fixed: total articles wasn't reset when downloading again (#69);
  • fixed: crash on reload if a queue-script is running (#71);
  • fixed: mark as bad may return items to queue if used on multiple items simultaneously (#67);
  • fixed: updating may fail if NZBGet was not installed on the system drive (Windows only) (#78);
  • fixed: the program may hang during multithreading par-repair, only certain Linux system affected (#41);
  • fixed: active URL download could not be deleted (#33);
  • fixed: par-verification of repaired files were sometimes not skipped in quick verification mode (option "ParQuick=yes");
  • fixed: when parsing nzb-files filenames may be incorrectly detected causing certain downloads to fail (#45);
  • fixed: nzb-files containing very large individual files (many GB) may cause program to crash or print error "Could not create file ..." (#52).
  • moved project hosting to GitHub:
  • moved source code repository from subversion to git;
  • updated POSIX makefile to generate revision number for testing releases (#3);
  • updated Linux installer build script to work with git (#9);
  • adjusted function "check for updates" in web-interface (#47);
  • update-scripts for Linux installer and Windows setup fetch new versions from GitHub releases area (#27);
  • cleaned up project root directory, removed many unneeded files which were required by GNU build tools (#48);
  • improvements in Linux installer:
  • improved compatibility with android;
  • added support for paths with spaces in parameter "--destdir";
  • auto-selecting "armhf"-architecture on ARM 64 bit systems (aarch64) (#35);
  • ignored nzbs are now added to history and processed by queue scripts (#26):
  • when an nzb-file isn’t added to queue for some reason, the file is now also added to history (in addition to messages printed to log);
  • on one hand that makes it easier to see errors (as history items instead of error log messages), on the other hand that provides more info for extension scripts and third-party programs;
  • for malformed nzb-files which cannot be parsed the status in history is "DELETE: SCAN";
  • for duplicate files with exactly same content status "DELETE: COPY";
  • for duplicate files having history items with status "GOOD" and for duplicate files having hidden history items with status "SUCCESS" which do not have any visible duplicates - status "DELETE: GOOD";
  • new values for field "DeleteStatus" of API-Method "history": GOOD, COPY, SCAN;
  • new values for field "Status" of API-Method "history": "FAILURE/SCAN", "DELETED/COPY", "DELETED/GOOD" (they will also be passed to pp-scripts as NZBPP_STATUS);
  • new queue-script event NZB_DELETED;
  • new queue event "URL_COMPLETED", with possible details: FAILURE, SCAN_SKIPPED, SCAN_FAILURE;
  • improved quick filter (the search box at the top of the page) (#72):
  • now supporting OR, AND, NOT, parenthesis;
  • can search in specific fields;
  • can search in API-fields which are not shown in the table;
  • filters can be saved and loaded using new drop down menu;
  • for more info see documentation page Quick Filter;
  • new advanced duplicate par-check mode (#64):
  • can be activated via option "ParScan=Dupe";
  • the new mode is based on the fact that the same releases are posted to Usenet multiple times;
  • when an item requires repair but doesn't have enough par-blocks the par-checker can reuse parts downloaded in other duplicates of the same title;
  • that makes it sometimes possible to repair downloads which would fail if tried to repair individually;
  • the downloads must be identifiable as duplicates (same nzb name or same duplicate key);
  • when par-checker needs more par-blocks it goes through the history and scans the download directories of duplicates until it finds missing blocks; it's smart enough to abort the scanning if the files come from different releases (based on video file size);
  • adjusted option "HealthCheck"; when set to "Delete" and duplicate par-scan is active, the download is aborted only if the completion is below 10%; that's to avoid deletion of damaged downloads which can be potentially repaired using new par-check mode;
  • downloads which were repaired using the new mode or which have donated their blocks to repair other downloads are distinguishable in the history details dialog with new status "EXPAR: RECIPIENT" or "EXPAR: DONOR"; a tooltip on the status shows amount of par-blocks received/donated;
  • new field "ExParStatus" returned by API-method "history";
  • to quickly find related history items use quick filter -exparstatus:none in history list;
  • queue script activity is now indicated in web-interface (#60):
  • items in download list may have new statuses "QS-QUEUED" (gray) or "QUEUE-SCRIPT" (green);
  • new values for field "Status" in API-method "listgroups": QS_QUEUED, QS_EXECUTING;
  • the number of active (and queued) scripts are shown in the status dialog in web-interface; this new row is hidden if no scripts are queued;
  • active queue scripts accounts for activity indicator in web-interface (rotating button);
  • new field "QueueScriptCount" in API-method "status" indicates number of queue-scripts queued for execution including the currently running;
  • added scripting support to RSS Feeds (#18):
  • new option "FeedScript";
  • new option "FeedX.FeedScript" to define per rss feed scripts; in addition to existing global option "FeedScript";
  • when adding nzb-files via web-interface it's now possible to change name and other properties (#76):
  • nzb-files in the upload-list are now clickable;
  • a click opens properties dialog where the name, password, duplicate key and duplicate score can be changed;
  • improvements in built-in web-server to fix communication errors which may occur on certain systems, in particular on OS X Safari (#77):
  • implemented graceful disconnect strategy in web-server;
  • added authorization via X-Auth-Token to overcome Safari’s bug, where it may stop sending HTTP Basic Auth header when executing ajax requests;
  • integrated unit testing framework, created few first unit tests:
  • new configure parameter "--enable-tests" to build the program with tests;
  • use "nzbget --tests" to execute all tests or "nzbget --tests -h" for more options;

New in NZBGet 16.0 r1420 Testing (Sep 1, 2015)

  • ignored nzbs are now added to history and processed by queue scripts (#26):
  • when an nzb-file isn’t added to queue for some reason, the file is now also added to history (in addition to messages printed to log);
  • on one hand that makes it easier to see errors (as history items instead of error log messages), on the other hand that provides more info for extension scripts and third-party programs;
  • for malformed nzb-files which cannot be parsed the status in history is “DELETE: SCAN”;
  • for duplicate files with exactly same content status “DELETE: COPY”;
  • for duplicate files having history items with status “GOOD” and for duplicate files having hidden history items with status “SUCCESS” which do not have any visible duplicates - status “DELETE: GOOD”;
  • new values for field “DeleteStatus” of API-Method “history”: GOOD, COPY, SCAN;
  • new values for field “Status” of API-Method “history”: "FAILURE/SCAN”, ”DELETED/COPY”, "DELETED/GOOD” (they will also be passed to pp-scripts as NZBPP_STATUS);
  • new queue-script event NZB_DELETED;
  • new queue event “URL_COMPLETED”, with possible details: FAILURE, SCAN_SKIPPED, SCAN_FAILURE;
  • new advanced duplicate par-check mode (#64):
  • can be activated via option "ParScan=Dupe";
  • the new mode is based on the fact that the same releases are posted to Usenet multiple times;
  • when an item requires repair but doesn't have enough par-blocks the par-checker can reuse parts downloaded in other duplicates of the same title;
  • that makes it sometimes possible to repair downloads which would fail if tried to repair individually;
  • the downloads must be identifiable as duplicates (same nzb name or same duplicate key);
  • when par-checker needs more par-blocks it goes through the history and scans the download directories of duplicates until it finds missing blocks; it's smart enough to abort the scanning if the files come from different releases (based on video file size);
  • adjusted option "HealthCheck"; when set to "Delete" and duplicate par-scan is active, the download is aborted only if the completion is below 10%; that's to avoid deletion of damaged downloads which can be potentially repaired using new par-check mode;
  • downloads which were repaired using the new mode or which have donated their blocks to repair other downloads are distinguishable in the history details dialog with new status "EXPAR: RECIPIENT" or "EXPAR: DONOR"; a tooltip on the status shows amount of par-blocks received/donated;
  • new field "ExParStatus" returned by API-method "history";
  • to quickly find related history items use quick filter -exparstatus:none in history list;
  • improved quick filter (the search box at the top of the page) (#72):
  • now supporting OR, AND, NOT, parenthesis;
  • can search in specific fields;
  • can search in API-fields which are not shown in the table;
  • filters can be saved and loaded using new drop down menu;
  • for more info see documentation page Quick Filter;
  • queue script activity is now indicated in web-interface (#60):
  • items in download list may have new statuses “QS-QUEUED” (gray) or “QUEUE-SCRIPT” (green);
  • new values for field “Status” in API-method “listgroups”: QS_QUEUED, QS_EXECUTING;
  • the number of active (and queued) scripts are shown in the status dialog in web-interface; this new row is hidden if no scripts are queued;
  • active queue scripts accounts for activity indicator in web-interface (rotating button);
  • new field “QueueScriptCount” in API-method “status” indicates number of queue-scripts queued for execution including the currently running;
  • new option "FeedX.Backlog" to control the RSS feed behavior when fetched for the first time or after changing of URL or filter (#73);
  • increased limit for log-entries in history dialog from 1000 to 10000;
  • completion tab of download details dialog (and history details dialog) shows per servers article completion in percents; now there are also tooltips to show article counts;
  • do not reporting bad blocks for missing files (which are already reported as missing);
  • fixed: reporting of bad blocks for empty files could print garbage file names;
  • fixed: par-check did not work on UNC paths (Windows only) (#74);
  • fixed: config error messages were not printed to log or screen but only to stdout, where users typically don’t see them (#61);
  • fixed: development version-revision were not shown in "Check for Updates"-dialog (#46);
  • fixed: incorrect reading of UrlStatus from diskstate (#70);
  • fixed: crash if an nzb contains only par2-files (bug introduced in v16);
  • fixed: total articles wasn't reset when downloading again (#69);
  • fixed: crash on reload if a queue-script is running (#71);
  • fixed: mark as bad may return items to queue if used on multiple items simultaneously (#67).

New in NZBGet 15.0 (May 20, 2015)

  • Improved application for Windows:
  • added tray icon (near clock);
  • left click on icon pauses/resumes download;
  • right lick opens menu with important functions;
  • console window can be shown/hidden via preferences (is hidden by default);
  • new preference to automatically start the program after login;
  • new preference to show browser on start;
  • new preference to hide tray icon;
  • menu commands to show important folders in windows explorer (destination, etc.);
  • on first start the config file is now placed into subdirectory "NZBGet" inside standard AppData-directory;
  • default destination and other directories are now placed in the AppData\NZBGet-directory instead of programs directory; this allows to install the program into "program files"-directory since the program does not write into the programs directory anymore;
  • the program exe has an icon now;
  • if the exe is started from windows explorer the program starts in application mode; if the exe is called from command prompt the program works in console mode;
  • Created installer for Windows:
  • the program is installed into "program files" by default;
  • the working directory with all subdirectories is now placed into "AppData" directory;
  • the batch files nzbget-start.bat and nzbget-recovery-mode.bat are not needed and not installed anymore;
  • the installer supports automatic updates via web-interface (Settings - SYSTEM - Check for updates);
  • Created installer for Linux:
  • included are precompiled binaries for the most common CPU architectures: x86, ARM, MIPS and PowerPC;
  • installer automatically detects CPU architecture of the system and installs an appropriate executable;
  • configuration file is automatically preconfigured for immediate use;
  • the installation on supported platforms has become as simple as: download, run installer, start installed nzbget;
  • the installer supports automatic updates via web-interface (Settings - SYSTEM - Check for updates);
  • for more info see topic [New Feature] Linux installer;
  • Added support for password list file:
  • new option "UnpackPassFile" to set the location of the file;
  • during unpack the passwords are tried from the file until unpack succeeds or all passwords were tried;
  • implemented different strategies for rar4 and rar5-archives taking into account the features of formats;
  • for rar5-archives a wrong password is reported by unrar unambiguously and the program can immediately try other passwords from the password list;
  • for rar4-archives and for 7z-archives it is not possible to differentiate between damaged archive and wrong password; for those archives if the first unpack attempt (without password) fails the program executes par-check (preferably quick par-check if enabled via option "ParQuick) before trying the passwords from the list;
  • another optimization is that the password list is tried only when the first unpack attempt (without password) reports a password error or decryption errors; this saves unnecessary unpack attempts for damaged unencrypted archives;
  • for more info see topic [New Feature] Password list file;
  • options "UnrarCmd" and "SevenZipCmd" can include extra switches to pass to unrar/7-zip.
  • This allows for easy passing of additional parameters without creating of proxy shell scripts;
  • for more info see topic [New Feature] Custom unrar parameters;
  • Improved news server connections handling:
  • if a download of an article fails due to connection error the news server becomes temporary disabled (blocked) for several seconds (defined by option "RetryInterval");
  • the download is then retried on another news server (of the same level) if available;
  • if no other news servers (of the same level) exist the program will retry the same news server after its block interval expires;
  • this increases failure tolerance when multiple news servers are used;
  • for more info see topic [New Feature] Fail-safe connection handling;
  • Added on-demand queue sorting:
  • one click on column title in web interface sorts the selected or all items;
  • if the items were already sorted in that order they are sorted backwards; in other words the second click sorts in descending order;
  • when sorting selected items they are also grouped together in a case there were holes between selected items;
  • RPC-method "editqueue" has new command "GroupSort", parameter "Text" must be one of: "name", "priority", "category", "size", "left"; add character "+" or "-" to sort to explicitly define ascending or descending order (for example "name-"); if none of these characters is used the auto-mode is active: the items are sorted in ascending order first, if nothing changed - they are sorted again in descending order;
  • for more info see topic [New Feature] On-demand queue sorting;
  • Added restricted user and add-user:
  • restricted user has access to most program functions but cannot see security related options (including usernames and passwords) and cannot save configuration;
  • restricted user can be used with other programs and web-sites;
  • add-user can only add new downloads via RPC-API and can be used with other programs or web-sites;
  • Added per-nzb logging:
  • each nzb now has its own individual log;
  • messages printed during download or post-processing are saved;
  • the messages can be retrieved later at any time;
  • new button "Log" in the history details dialog;
  • button "Log" in the download details dialog is now active during download too (not only during post-processing);
  • the log contains all nzb-related messages except detail-messages and errors printed during retrieving of articles (they would produce way too many messages and are not that useful anyway);
  • new option "NzbLog" to deactivate per-nzb logging if necessary;
  • per-nzb logs are saved in the queue-directory (option "QueueDir");
  • new RPC-method "loadlog" returns the previously saved messages for a given nzb-file;
  • new field "MessageCount" is returned by RPC-methods "listgroups" and "history" and indicates if there are any messages saved for the item;
  • parameter "NumberOfLogEntries" of RPC-method "listgroups" and the field "Log" returned by the method are now deprecated, use method "loadlog" instead;
  • field "PostInfoText" returned by RPC-method "listgroups" is now automatically filled with the latest message printed by a pp-script eliminating the need to access deprecated field "Log"';
  • new action "Mark as success" on history page and in history details dialog:
  • items marked as success are considered successfully downloaded and processed, which is important for duplicate check;
  • use this command if the download was repaired outside of NZBGet;
  • new action "HistoryMarkSuccess" in RPC-method "editqueue";
  • new subcommand "S" of command "-E H" (command line interface);
  • new status "SUCCESS/MARK" can be returned by RPC-method "history";
  • Actions for history items can now be performed for multiple (selected) records:
  • post-process again, download again, mark as success, mark as good, mark as bad;
  • extended RPC-API method "editqueue": for history-records of type "URL" the action "HistoryRedownload" can now be used as synonym to "HistoryReturn" (makes it easier to redownload multiple items of different types (URL and NZB) with one API call).
  • options "ParIgnoreExt" and "ExtCleanupDisk" can now contain wildcard characters * and ?;
  • added new option "ServerX.Retention" to define server retention time (days); files older than configured server retention time are not even tried on this server;
  • added support for negative numeric values in rss filter (useful for fields "dupescore" and "priority");
  • added subcommand "HA" to remote command "--list/-L" to list the whole history including hidden records;
  • added optional parameters to remote command "--append/-A" allowing to pass duplicate key, duplicate mode and duplicate score; removed parameters "F" and "U" of command "--append/-A", which were used to set mode (file or URL), which is now detected automatically; the parameters are still supported for compatibility;
  • name and category of history items can now be changed in web-interface; RPC-API method "editqueue" extended with new actions "HistorySetName" and "HistorySetCategory";
  • improved timeout handling during establishing of connections;
  • updated pp-script "EMail.py":
  • using the new nzb-log feature;
  • new option "SendMail" allows to choose if the e-mail should be send always or on failure only;
  • updated pp-script "Logger.py" to use the new nzb-log feature;
  • improved cleanup (option ExtCleanupDisk):
  • if download was successful with health 100% the cleanup is now performed even if par-check and unpack were not made; previously a successful par-check or unpack were required for cleanup;
  • now the files are deleted in subdirectories too (recursively);
  • added a small button near feed name in the feed menu on downloads-page; a click on the button fetches the feed, whereas a click on the feed title shows feed's content (as before);
  • improved detection of malformed nzb-files: nzbs which are valid xml-documents but without nzb content are now rejected with an appropriate error message;
  • renamed option "CreateBrokenLog" to "BrokenLog"; the old option name is recognized and automatically converted when the configuration is saved in web-interface;
  • improved the quality of speed throttling when a speed limit is active;
  • added hidden webui setting "rowSelect" to select records by clicking on any part of the row, not just on the check mark; to activate it change the setting "rowSelect" in webui/index.js;
  • when moving files to final destination the hidden files (with names starting with dot) are considered unimportant and no errors are printed if they cannot be moved; such files (.AppleDouble, .DS_Store, etc.) are usually used by services to hold metadata and can be safely ignored;
  • option sets (such as news-servers, categories, etc.) can now be reordered using news buttons "move up" and "move down";
  • added button "Test Connection" to make a news server connection test from web-interface;
  • improved timeout handling when connecting to news servers which have multiple addresses;
  • improved error handling when communicating with secure servers (do not trying to send quit-command if connection could not be established or was interrupted; this avoids unnecessary timeout);
  • improved connection handling when fetching nzb-files and rss feeds; do not print warning "Content-Length is not submitted by server..." anymore;
  • download speed in context menu of menubar icon is now shown in MB/s instead of KB/s (for speeds from 1 MB/s) (Mac OS X only);
  • removed shell script "nzbgetd" which were used to control nzbget as a service; modern systems manage services in a diffreent way and do not require that old script anymore;
  • updated info in about dialogs (Windows and Mac OSX);
  • updated description of few options;
  • changed defaults for few logging options;
  • configuration file nzbget.conf is now also searched in the app-directory on all platforms (for easier installation);
  • disabled unnecessary assert-statements in par2-module when building in release mode;
  • disabled changing of compiler options during configuring in debug mode (--enable-debug); it conflicted with cross-compiling and did not allow to pass extra options via CXXFLAGS; required debug options must be passed via CXXFLAGS now (for example for gcc: CXXFLAGS=-g ./configure --enable-debug);
  • improved support for update-scripts:
  • all command line parameters used to launch nzbget are passed to the script in env vars NZBUP_CMDLINEX, where X is a parameter number starting with 0;
  • if the path to update-script defined in package-info.json does not start with slash the path is considered being relative to application directory;
  • new env var NZBUP_RUNMODE (DAEMON, SERVER) is passed to the script;
  • fixed: env var NZBUP_PROCESSID had wrong value (ID of the parent process instead of the nzbget process);
  • fixed: command "make install" installed README from par2-subdirectory instead of main README;
  • fixed: web-interface may fail to load on Firefox mobile;
  • fixed: parsing of RPC-parameters passed via URL were sometimes incorrect;
  • fixed: in JSON-RPC the request-id was not transfered back in the response as required by JSON-RPC specification;
  • fixed possible crash when using remote command "-B dump" to print debug info;
  • fixed: XML-RPC method "history" returned invalid xml when used with parameter "hidden=true" (JSON-RPC worked correct);
  • fixed: remote command "nzbget -L H" may crash if the history contained URL-items with certain status;
  • fixed: unlike to all other scripts the update-script should not be automatically terminated when the program quits;
  • fixed: action "Split" may not work for bad nzb-files with missing segments; new Field "Progress" returned by RPC-method "listfiles" shows the download progress of the file taking missing articles into account;
  • if the lock-file cannot be created or the lock could not be acquired an error message is printed to the log-file;
  • fixed: update log shown during automatic update via web-interface may show duplicate messages or messages may clear out;
  • fixed: lowercase hex digits were not correctly parsed in URLs passed to RPC-API method "append";
  • suppress printing of memory leaks reports when the program terminates because of wrong command line switches (Windows debug mode only).

New in NZBGet 15.0 R1279 Dev (May 18, 2015)

  • fixed incompatibility issue in Linux installer for CPU-architecture "armel" (ARMv5) - the program could crash during fetching of RSS feeds.

New in NZBGet 15.0 R1279 Dev (May 13, 2015)

  • CHANGES:
  • improved compatibility of universal installer for Linux with various Linux variations;
  • universal installer for Linux now supports automatic updates via web-interface (Settings - SYSTEM - Check for updates);
  • improved support for update-scripts:
  • all command line parameters used to launch nzbget are passed to the script in env vars NZBUP_CMDLINEX, where X is a parameter number starting with 0;
  • if the path to update-script defined in package-info.json does not start with slash the path is considered being relative to application directory;
  • new env var NZBUP_RUNMODE (DAEMON, SERVER) is passed to the script;
  • fixed: env var NZBUP_PROCESSID had wrong value (ID of the parent process instead of the nzbget process);
  • fixed: lowercase hex digits were not correctly parsed in URLs passed to RPC-API method "append";
  • fixed possible crash on start or reload (r1271);
  • suppressed few warnings when compiled in release mode with clang.

New in NZBGet 15.0 R1271 Dev (May 1, 2015)

  • created installer for Linux:
  • included are precompiled binaries for the most common CPU architectures: x86, ARM, MIPS and PowerPC;
  • installer automatically detects the CPU architecture of the system and installs an appropriate executable;
  • configuration file is automatically preconfigured for immediate use;
  • the installation on supported platforms has become as simple as: download, run installer, start installed nzbget;
  • for more info see topic [New Feature] Linux installer.
  • configuration file nzbget.conf is now also searched in the app-directory on all platforms (for easier installation);
  • fixed: command "make install" installed README from par2-subdirectory instead of main README;
  • disabled changing of compiler options during configuring in debug mode (--enable-debug); it conflicted with cross-compiling and did not allow to pass extra options via CXXFLAGS; required debug options must be passed via CXXFLAGS now (for example for gcc: CXXFLAGS=-g ./configure --enable-debug);
  • fixed: web-interface may fail to load on Firefox mobile;
  • disabled unnecessary assert-statements in par2-module when building in release mode.

New in NZBGet 15.0 R1256 Dev (Apr 20, 2015)

  • Changes since 15.0-testing-r1253
  • improved update routine in Windows package (Windows only);
  • download speed in context menu of menubar icon is now shown in MB/s instead of KB/s (for speeds from 1 MB/s) (Mac OS X only);
  • added confirmation dialog for command "Download again" in history list;
  • addition to r1250: better handling of multiple addresses and protocols.

New in NZBGet 15.0 R1253 Dev (Apr 6, 2015)

  • CHANGES SINCE 15.0-TESTING-R1241:
  • new action "Mark as success" on history page and in history details dialog:
  • items marked as success are considered successfully downloaded and processed, which is important for duplicate check;
  • use this command if the download was repaired outside of NZBGet;
  • new action "HistoryMarkSuccess" in RPC-method "editqueue";
  • new subcommand "S" of command "-E H" (command line interface);
  • new status "SUCCESS/MARK" can be returned by RPC-method "history";
  • added button "Test Connection" to make a news server connection test from web-interface;
  • improved timeout handling when connecting to news servers which have multiple addresses;
  • improved error handling when communicating with secure servers (do not trying to send quit-command if connection could not be established or was interrupted; this avoids unnecessary timeout);
  • improved connection handling when fetching nzb-files and rss feeds; do not print warning "Content-Length is not submitted by server..." anymore;
  • addition to r1182: do not block news servers when a download is cancelled/deleted;
  • small change in text message generated by pp-script "EMail.py";
  • removed shell script "nzbgetd" which were used to control nzbget as a service; modern systems manage services in a diffreent way and do not require that old script anymore;
  • fixed: command "nzbget -L H" may crash if the history contained URL-items with certain status;
  • fixed: action "Split" may not work for bad nzb-files with missing segments; new Field "Progress" returned by RPC-method "listfiles" shows the download progress of the file taking missing articles into account;
  • if the lock-file cannot be created or the lock could not be acquired an error message is printed to the log-file;
  • fixed: update log shown during automatic update via web-interface may show duplicate messages or messages may clear out;
  • fixed: automatic update via web-interface may not work (Windows only);

New in NZBGet 15.0 R1241 Dev (Mar 23, 2015)

  • CHANGES SINCE 15.0-TESTING-R1228:
  • added command "Troubleshooting -> Reset to Factory Defaults" to tray menu (Windows only);
  • improved the quality of speed throttling when a speed limit is active;
  • added hidden webui setting "rowSelect" to select records by clicking on any part of the row, not just on the check mark; to activate it change the setting "rowSelect" in webui/index.js;
  • when moving files to final destination the hidden files (with names starting with dot) are considered unimportant and no errors are printed if they cannot be moved; such files (.AppleDouble, .DS_Store, etc.) are usually used by services to hold metadata and can be safely ignored;
  • option sets (such as news-servers, categories, etc.) can now be reordered using news buttons "move up" and "move down";
  • adjusted defaults for few settings on Windows; in order to make these settings hidden from web ui;
  • updated desription of few options;
  • changed defaults for few logging options;
  • fixed: parsing of RPC-parameters passed via URL were sometimes incorrect;
  • no more fatal abort if the lock-file cannot be created (daemon mode only, POSIX only); an error message is printed to log instead;
  • fixed: in JSON-RPC the request-id was not transfered back in the response as required by JSON-RPC specification;
  • fixed: par-check in full verification mode (not in quick mode) could not detected damaged files if they were completely empty (0 bytes), which is possible when option "DirectWrite" was not active and all articles of the file were missing.
  • OTHER CHANGES SINCE 14.1:
  • improved application for Windows:
  • added tray icon (near clock);
  • left click on icon pauses/resumes download;
  • right lick opens menu with important functions;
  • console window can be shown/hidden via preferences (is hidden by default);
  • new preference to automatically start the program after login;
  • new preference to show browser on start;
  • new preference to hide tray icon;
  • menu commands to show important folders in windows explorer (destination, etc.);
  • on first start the config file is now placed into subdirectory "NZBGet" inside standard AppData-directory;
  • default destination and other directories are now placed in the AppData\NZBGet-directory instead of programs directory; this allows to install the program into "program files"-directory since the program does not write into the programs directory anymore;
  • the program exe has an icon now;
  • if the exe is started from windows explorer the program starts in application mode; if the exe is called from command prompt the program works in console mode;
  • created installer for windows:
  • the program is installed into "program files" by default;
  • the working directory with all subdirectories is now placed into "AppData" directory;
  • the batch files nzbget-start.bat and nzbget-recovery-mode.bat are not needed and not installed anymore;
  • added support for password list file:
  • new option "UnpackPassFile" to set the location of the file;
  • during unpack the passwords are tried from the file until unpack succeeds or all passwords were tried;
  • implemented different strategies for rar4 and rar5-archives taking into account the features of formats;
  • for rar5-archives a wrong password is reported by unrar unambiguously and the program can immediately try other passwords from the password list;
  • for rar4-archives and for 7z-archives it is not possible to differentiate between damaged archive and wrong password; for those archives if the first unpack attempt (without password) fails the program executes par-check (preferably quick par-check if enabled via option "ParQuick) before trying the passwords from the list;
  • another optimization is that the password list is tried only when the first unpack attempt (without password) reports a password error or decryption errors; this saves unnecessary unpack attempts for damaged unencrypted archives;
  • for more info see topic [New Feature] Password list file;
  • options "UnrarCmd" and "SevenZipCmd" can include extra switches to pass to unrar/7-zip.
  • This allows for easy passing of additional parameters without creating of proxy shell scripts;
  • for more info see topic [New Feature] Custom unrar parameters;
  • improved news server connections handling:
  • if a download of an article fails due to connection error the news server becomes temporary disabled (blocked) for several seconds (defined by option "RetryInterval");
  • the download is then retried on another news server (of the same level) if available;
  • if no other news servers (of the same level) exist the program will retry the same news server after its block interval expires;
  • this increases failure tolerance when multiple news servers are used;
  • for more info see topic [New Feature] Fail-safe connection handling;
  • added on-demand queue sorting:
  • one click on column title in web interface sorts the selected or all items;
  • if the items were already sorted in that order they are sorted backwards; in other words the second click sorts in descending order;
  • when sorting selected items they are also grouped together in a case there were holes between selected items;
  • RPC-method "editqueue" has new command "GroupSort", parameter "Text" must be one of: "name", "priority", "category", "size", "left"; add character "+" or "-" to sort to explicitly define ascending or descending order (for example "name-"); if none of these characters is used the auto-mode is active: the items are sorted in ascending order first, if nothing changed - they are sorted again in descending order;
  • for more info see topic [New Feature] On-demand queue sorting;
  • added restricted user and add-user:
  • restricted user has access to most program functions but cannot see security related options (including usernames and passwords) and cannot save configuration;
  • restricted user can be used with other programs and web-sites;
  • add-user can only add new downloads via RPC-API and can be used with other programs or web-sites;
  • added per-nzb logging:
  • each nzb now has its own individual log;
  • messages printed during download or post-processing are saved;
  • the messages can be retrieved later at any time;
  • new button "Log" in the history details dialog;
  • button "Log" in the download details dialog is now active during download too (not only during post-processing);
  • the log contains all nzb-related messages except detail-messages and errors printed during retrieving of articles (they would produce way too many messages and are not that useful anyway);
  • new option "NzbLog" to deactivate per-nzb logging if necessary;
  • per-nzb logs are saved in the queue-directory (option "QueueDir");
  • new RPC-method "loadlog" returns the previously saved messages for a given nzb-file;
  • new field "MessageCount" is returned by RPC-methods "listgroups" and "history" and indicates if there are any messages saved for the item;
  • parameter "NumberOfLogEntries" of RPC-method "listgroups" and the field "Log" returned by the method are now deprecated, use method "loadlog" instead;
  • field "PostInfoText" returned by RPC-method "listgroups" is now automatically filled with the latest message printed by a pp-script eliminating the need to access deprecated field "Log"';
  • actions for history items can now be performed for multiple (selected) records:
  • post-process again, download again, mark as good, mark as bad;
  • extended RPC-API method "editqueue": for history-records of type "URL" the action "HistoryRedownload" can now be used as synonym to "HistoryReturn" (makes it easier to redownload multiple items of different types (URL and NZB) with one API call).
  • options "ParIgnoreExt" and "ExtCleanupDisk" can now contain wildcard characters * and ?;
  • added new option "ServerX.Retention" to define server retention time (days); files older than configured server retention time are not even tried on this server;
  • added support for negative numeric values in rss filter (useful for fields "dupescore" and "priority");
  • added subcommand "HA" to remote command "--list/-L" to list the whole history including hidden records;
  • added optional parameters to remote command "--append/-A" allowing to pass duplicate key, duplicate mode and duplicate score; removed parameters "F" and "U" of command "--append/-A", which were used to set mode (file or URL), which is now detected automatically; the parameters are still supported for compatibility;
  • name and category of history items can now be changed in web-interface; RPC-API method "editqueue" extended with new actions "HistorySetName" and "HistorySetCategory";
  • improved timeout handling during establishing of connections;
  • updated pp-script "EMail.py":
  • using the new nzb-log feature;
  • new option "SendMail" allows to choose if the e-mail should be send always or on failure only;
  • updated pp-script "Logger.py" to use the new nzb-log feature;
  • improved cleanup (option ExtCleanupDisk):
  • if download was successful with health 100% the cleanup is now performed even if par-check and unpack were not made; previously a successful par-check or unpack were required for cleanup;
  • now the files are deleted in subdirectories too (recursively);
  • added built-in update feature to windows package; accessible via web-interface -> settings -> system -> check for updates;
  • added a small button near feed name in the feed menu on downloads-page; a click on the button fetches the feed, whereas a click on the feed title shows feed's content (as before);
  • improved detection of malformed nzb-files: nzbs which are valid xml-documents but without nzb content are now rejected with an appropriate error message;
  • renamed option "CreateBrokenLog" to "BrokenLog"; the old option name is recognized and automatically converted when the configuration is saved in web-interface;
  • files with names starting with ".nfs" are now ignored during cleanup and moving of unpacked files; these files are managed by NAS software;
  • updated info in about dialogs (Windows and Mac OSX);
  • fixed possible crash when using remote command "-B dump" to print debug info;
  • fixed: the program could crash during download when article cache was active (more likely on very high download speeds);
  • fixed: XML-RPC method "history" returned invalid xml when used with parameter "hidden=true" (JSON-RPC worked correct);
  • fixed: remote command "-L HA" (which prints the history including hidden records) could crash;
  • fixed: web-browser was launched on program reload; now it is launched only if the reload is initiated via tray menu (Windows only);
  • fixed: unlike to all other scripts the update-script should not be automatically terminated when the program quits;
  • suppress printing of memory leaks reports when the program terminates because of wrong command line switches (Windows debug mode only).

New in NZBGet 15.0 R1228 Dev (Mar 5, 2015)

  • CHANGES:
  • added restricted user and add-user:
  • restricted user has access to most program functions but cannot see security related options (including usernames and passwords) and cannot save configuration;
  • restricted user can be used with other programs and web-sites;
  • add-user can only add new downloads via RPC-API and can be used with other programs or web-sites;
  • added per-nzb logging:
  • each nzb now has its own individual log;
  • messages printed during download or post-processing are saved;
  • the messages can be retrieved later at any time;
  • new button "Log" in the history details dialog;
  • button "Log" in the download details dialog is now active during download too (not only during post-processing);
  • the log contains all nzb-related messages except detail-messages and errors printed during retrieving of articles (they would produce way too many messages and are not that useful anyway);
  • new option "NzbLog" to deactivate per-nzb logging if necessary;
  • per-nzb logs are saved in the queue-directory (option "QueueDir");
  • new RPC-method "loadlog" returns the previously saved messages for a given nzb-file;
  • new field "MessageCount" is returned by RPC-methods "listgroups" and "history" and indicates if there are any messages saved for the item;
  • parameter "NumberOfLogEntries" of RPC-method "listgroups" and the field "Log" returned by the method are now deprecated, use method "loadlog" instead;
  • field "PostInfoText" returned by RPC-method "listgroups" is now automatically filled with the latest message printed by a pp-script eliminating the need to access deprecated field "Log"';
  • updated pp-script "EMail.py":
  • using the new nzb-log feature;
  • new option "SendMail" allows to choose if the e-mail should be send always or on failure only;
  • updated pp-script "Logger.py" to use the new nzb-log feature;
  • improved cleanup (option ExtCleanupDisk):
  • if download was successful with health 100% the cleanup is now performed even if par-check and unpack were not made; previously a successful par-check or unpack were required for cleanup;
  • now the files are deleted in subdirectories too (recursively);
  • added built-in update feature to windows package; accessible via web-interface -> settings -> system -> check for updates;
  • added a small button near feed name in the feed menu on downloads-page; a click on the button fetches the feed, whereas a click on the feed title shows feed's content (as before);
  • improved detection of malformed nzb-files: nzbs which are valid xml-documents but without nzb content are now rejected with an appropriate error message;
  • renamed option "CreateBrokenLog" to "BrokenLog"; the old option name is recognized and automatically converted when the configuration is saved in web-interface;
  • files with names starting with ".nfs" are now ignored during cleanup and moving of unpacked files; these files are managed by NAS software;
  • fixed: unlike to all other scripts the update-script should not be automatically terminated when the program quits;

New in NZBGet 15.0 R1196 Dev (Jan 26, 2015)

  • fixed: program could crash during download - reverted r1193 (which changed the way when unused connections are closed), until the issue is fixed;
  • fixed compilation error on certain systems (added missing include-directive).

New in NZBGet 15.0 R1177 Dev (Dec 8, 2014)

  • actions for history items can now be performed for multiple (selected) records:
  • post-process again, download again, mark as good, mark as bad;
  • extended RPC-API method "editqueue": for history-records of type "URL" the action "HistoryRedownload" can now be used as synonym to "HistoryReturn" (makes it easier to redownload multiple items of different types (URL and NZB) with one API call).

New in NZBGet 14.1 (Nov 28, 2014)

  • fixed: program could crash during unpack (Posix) or unpack failure was reported (Windows);
  • fixed: quick par-check could hang on certain nzb-files containing multiple par-sets (occured only in 64 bit mode);
  • fixed: menubar icon was not visible on Mac OSX in dark mode;
  • system sleep on idle state is now prevented during download and post-processing (Mac OSX only);
  • fixed: unrar may sometimes fail with message "no files to extract" (certain Linux systems);
  • fixed false memory leak warning when compiled in debug mode (Windows only);
  • fixed: Mac OSX app didn't work on OS X 10.7 Lion.

New in NZBGet 14.0 (Nov 10, 2014)

  • CHANGES:
  • added article cache:
  • new option "ArticleCache" defines memory limit to use for cache;
  • when cache is active the articles are written into cache first and then all flushed to disk into the destination file;
  • article cache reduces disk IO and may reduce file fragmentation improving post-processing speed (unpack);
  • it works with both writing modes (direct write on and off);
  • when option "DirectWrite" is disabled the cache should be big enough (for best performance) to accommodate all articles of one file (sometimes up to 500 MB) in order to avoid writing articles into temporary files, otherwise temporary files are used for articles which do not fit into cache;
  • when used in combination with DirectWrite there is no such limitation and even a small cache (100 MB or even less) can be used effectively; when the cache becomes full it is flushed automatically (directly into destination file) providing room for new articles;
  • new row in the "statistics and status dialog" in web-interface indicates the amount of memory used for cache;
  • new fields "ArticleCacheLo", "ArticleCacheHi" and "ArticleCacheMB" returned by RPC-method "status";
  • see forum topic [New Feature] Article memory cache for more info;
  • renamed option "WriteBufferSize" into "WriteBuffer":
  • changed the dimension - now option is set in kilobytes instead of bytes;
  • old name and value are automatically converted;
  • if the size of article is below the value defined by the option, the buffer is allocated with the articles size (to not waste memory);
  • therefore the special value "-1" is not required anymore; during conversion "-1" is replaced with "1024" (1 megabyte) but it can be of course manually changed to any other value later;
  • integrated par2-module (libpar2) into NZBGet’s source code tree:
  • the par2-module is now built automatically during building of NZBGet;
  • this eliminates dependency from external libpar2 and libsigc++...
  • ...making it much easier for users to compile NZBGet without patching libpar2;
  • for more info see forum topic [New Feature] Integrated par2-module;
  • added quick file verification during par-check/repair:
  • if par-repair is required for download the files downloaded without errors are verified quickly by comparing their checksums against the checksums stored in the par2-file;
  • this makes the verification of undamaged files almost instant;
  • damaged (partially downloaded) files are also verified quickly by comparing block's checksums against the checksums stored in the par2-file; when necessary the small amounts of data is read from files to calculate block's checksums;
  • this makes the verification of damaged files very fast;
  • new option "ParQuick" (active by default);
  • when quick par verification is active the repaired files are not verified to save time; the only reason for incorrect files after repair can be hardware errors (memory, disk) but this is not something NZBGet should care about;
  • if unpack fails (excluding invalid password errors) and quick par-check does not find any errors or quick par-check was already performed the full par-check is performed; this helps in certain rare situations caused by abnormal program termination;
  • see forum topic [New Feature] Quick par verification for more info;
  • added multithreading par-repair:
  • doesn't depend on other libraries and works everywhere, on all platforms and all CPUs (with multiple cores), no special compiling steps are required;
  • new option "ParThreads" to set the number of threads for repairing;
  • the number of repair threads is automatically reduced to the amount of bad blocks if there are too few of them; if there is only one bad block the multithreading par-repair is switched off to avoid overhead of thread synchronisation (which does not make sense for one working thread);
  • new option "ParBuffer" to define the memory limit to use during par-repair;
  • for more info see forum topic [New Feature] Multithreading par-repair;
  • added support for detection of bad downloads (fakes, etc.):
  • queue-scripts are now called after every downloaded file included in nzb;
  • new events "FILE_DOWNLOADED" and "NZB_DOWNLOADED" of parameter "NZBNA_EVENT"; new env. var "NZBNA_DIRECTORY" passed to queue scripts;
  • queue-scripts have a chance to detect bad downloads when the download is in progress and cancel bad downloads by printing a special command; downloads marked as bad become status "FAILURE/BAD" and are processed by the program as failures (triggering duplicate handling); scripts executed thereafter see the new status and can react accordingly (inform an indexer or a third-party automation tool);
  • when a script marks nzb as bad the nzb is deleted from queue, no further internal post-processing (par, unrar, etc.) is made for the nzb but all post-processing scripts are executed; if option "DeleteCleanupDisk" is active the already downloaded files are deleted;
  • new status "BAD" for field "DeleteStatus" of nzb-item in RPC-method "history";
  • queue-scripts can set post-processing parameters by printing special command, just like post-processing-scripts can do that; this simplifies transferring (of small amount) of information between queue-scripts and post-processing-scripts;
  • scripts supporting two modes (post-processing-mode and queue-mode) are now executed if selected in post-processing parameters: either in options "PostScript" and "CategoryX.PostScript" or manually on page "Postprocess" of download details dialog in web-interface; it is not necessary to select dual-mode scripts in option "QueueScript"; that provides more flexibility: the scripts can be selected per-category or activated/deactivated for each nzb individually;
  • added option "EventInterval" allowing to reduce the number of calls of queue-scripts, which can be useful on slow systems;
  • queue scripts can define what events they are interested in; this avoids unnecessary calling of the scripts which do not process certain events;
  • for more info see forum topic Fake detection;
  • the list of scripts (pp-scripts, queue-scripts, etc.) is now read once on program start instead of reading everytime a script is executed:
  • that eliminates the unnecessary disk access;
  • the settings page of web-interface loads available scripts every time the page is shown;
  • this allows to configure newly added scripts without restarting the program first (just like it was before); a restart is still required to apply the settings (just like it was before);
  • RPC-method "configtemplates" has new parameter "loadFromDisk"
  • options "ParIgnoreExt" and "ExtCleanupDisk" are now respected by par-check (in addition to being respected by par-rename): if all damaged or missing files are covered by these options then no par-repair is performed and the download assumed successful;
  • added new search field "dupestatus" for use in rss filters:
  • the search is performed through download queue and history testing items with the same dupekey or title as current rss item;
  • the field contains comma-separated list of following possible statuses (if duplicates were found): QUEUED, DOWNLOADING, SUCCESS, WARNING, FAILURE or an empty string if there were no matching items found;
  • added log file rotation:
  • options "CreateLog" and "ResetLog" replaced with new option "WriteLog (none, append, reset, rotate)";
  • new option "RotateLog" defines rotation period;
  • improved joining of splitted files:
  • instead of performing par-repair the files are now joined by unpacker, which is much faster;
  • the files splitted before creating of par-sets are now joined as well (they were not joined in v13 because par-repair has nothing to repair in this case);
  • the unpacker can detect missing fragments and requests par-check if necessary;
  • added per-nzb time and size statistics:
  • total time, download, verify, repair and unpack times, downloaded size and average speed, shown in history details dialog via click on the row with total size in statistics block;
  • RPC-methods "listgroups" and "history" return new fields: "DownloadedSizeLo", "DownloadedSizeHi", "DownloadedSizeMB", "DownloadTimeSec", "PostTotalTimeSec", "ParTimeSec", "RepairTimeSec", "UnpackTimeSec";
  • see forum topic [New Feature] Per-nzb time statistics for screenshots and more info;
  • pp-script "EMail.py" now supports mail server relays (thanks to l2g for the patch);
  • when compiled in debug mode new field "process id" is printed to the file log for each row (it is easier to identify processes than threads);
  • if an nzb has only few failed articles it may have completion shown as 100%; now it is shown as 99.9% to indicate that not everything was successfully downloaded;
  • updated configure-script to not require gcrypt for newer GnuTLS versions (when gcrypt is not needed);
  • for downloads delayed due to propagation delay (option "PropagationDelay") a new badge "propagation" is now shown near download name;
  • added new option "UrlTimeout" to set timeout for URL fetching and RSS feed fetching; renamed option "ConnectionTimeout" to "ArticleTimeout";
  • improved pp-script EMail.py: now it can send time statistics (thanks to JVM for the patch);
  • improvement in duplicate check:
  • if a new download with empty dupekey and empty dupescore is marked as "dupe" and the another download with the same name have non empty dupekey or dupescore these properties are copied from that download;
  • this is useful because the new download is most likely another upload of the same file and it should have the same duplicate properties for best duplicate handling results;
  • when connecting in remote mode using command line parameter "--connect/-C" the option "ControlIP" is now interpreted as "127.0.0.1" if it is set to "0.0.0.0" (instead of failing with an error message);
  • when option "ContinuePartial" is active the current state is saved not more often than once per second instead of after every downloaded article; this significantly reduce the amount of disk writings on high download speeds;
  • added commands "PausePostProcess" and "UnpausePostProcess" to scheduler;
  • unpack is now automatically immediately aborted if unrar reports CRC errors;
  • unpack is now immediately aborted if unrar reports wrong password (works for rar5 as well as for older formats); the unpack error status "PASSWORD" is now set for older formats too (not only rar5);
  • improved cleanup:
  • disk cleanup is now not performed if unrar failed even if par-check was successful;
  • queue cleanup (for remaining par2-files) is now made more smarter: the files are kept (parked) if they can be used by command "post-process again" and are removed otherwise;
  • improved scan-scripts: if the category of nzb-file is changed by the scan-script the assigned post-processing scripts are now automatically reset according to the new category;
  • added missing new line character at the end of the help screen printed by "nzbget -h";
  • better error reporting if a temp file could not be found;
  • added news server name to message "Cancelling hanging download ..." to help identifying problematic servers;
  • added column "age" to history tab in web-interface;
  • debug builds for Windows now print call stack on crash to the log-file, which is very useful for debugging;
  • additional parameters (env. vars) are now passed to scan scripts: NZBNP_DUPEKEY, NZBNP_DUPESCORE, NZBNP_DUPEMODE; scan-scripts can now set dupekey, dupemode and dupescore by printing new special commands;
  • fixed potential crash which could happen in debug mode during program restart;
  • fixed - program could crash during restart if an extension script was running; now all active scripts are terminated during restart;
  • fixed - RPC-method "editqueue" with action "HistoryReturn" caused a crash if the history item did not have any remaining (parked) files;
  • fixed - RPC-method "saveconfig" did not work via XML-RPC (but worked via JSON-RPC);
  • fixed - a superfluous comma at the end of option "TaskX.Time" was interpreted as an error or may cause a crash;
  • fixed - relative destination paths (options "DestDir" and "CategoryX.DestDir") caused failures during unrar;
  • fixed - splitted .cbr-files were not properly joined;
  • fixed - inner files (files listed in nzb) bigger than 2GB could not be downloaded;
  • fixed - cleanup may leave some files undeleted (Mac OSX only);
  • fixed - compiler error if configured using parameter "--disable-gzip";
  • fixed - one log-message was printed only to global log but not to nzb-item pp-log;
  • fixed - par-check could fail on valid files (bug introduced in libpar2 0.3);
  • fixed - scheduler tasks were not checked after wake up if the sleep time was longer than 90 minutes;
  • fixed - the "pause extra pars"-state was missing in the pause/resume-loop of curses interface, key "P";
  • fixed - web interface showed an error box when trying to submit files with extensions other than .nzb, although these files could be processed by a scan-script; now the error is not shown if any scan-script is set in options.

New in NZBGet 14.0 R1153 Dev (Nov 6, 2014)

  • fixed: the old directory was sometimes not removed when the download was renamed or assigned to another category (bug introduced in v14, additional fix).

New in NZBGet 14.0 R1152 Dev (Nov 4, 2014)

  • CHANGES:
  • fixed: the old directory was sometimes not removed when the download was renamed or assigned to another category (bug introduced in v14);
  • fixed: description was not shown correctly for queue scripts with defined events (bug introduced in r1148).

New in NZBGet 14.0 R1150 Dev (Oct 27, 2014)

  • Changes:
  • Additional parameters (env. vars) are now passed to scan scripts: NZBNP_DUPEKEY, NZBNP_DUPESCORE, NZBNP_DUPEMODE; scan-scripts can now set dupekey, dupemode and dupescore by printing new special commands;
  • Queue scripts can now define what events they are interested in; this avoids unnecessary calling of the scripts which do not process certain events;
  • Fixed a compiling error on OS/2 (bug introduced in r1145);
  • Fixed potential crash which could happen in debug mode during program restart;
  • Fixed: program could crash during restart if an extension script was running; now all active scripts are terminated during restart;

New in NZBGet 14.0 R1145 Dev (Oct 16, 2014)

  • Improvement in quick par-verification:
  • Iif unpack fails (excluding invalid password errors) and quick par-check does not find any errors or quick par-check was already performed the full par-check is performed; this helps in rare situations when files were correctly downloaded (and therefore assumed correct by quick par-check) but incorrectly written into disk due to abnormal program termination (caused by bugs or hardware crashes).
  • Added news server name to message "Cancelling hanging download ..." to help identifying problematic servers;
  • Added column "age" to history tab in web-interface;
  • Paths with drive letters are now considered absolute on all OSes not only on Windows because there are also other OSes using drive letters;
  • Debug builds for Windows now print call stack on crash to the log-file, which is very useful for debugging;
  • Fixed:
  • RPC-method "editqueue" with action "HistoryReturn" caused a crash if the history item did not have any remaining (parked) files;
  • RPC-method "saveconfig" did not work via XML-RPC (but worked via JSON-RPC);
  • A superfluous comma at the end of option "TaskX.Time" was interpreted as an error or may cause a crash;

New in NZBGet 14.0 R1144 Dev (Oct 15, 2014)

  • Improvement in quick par-verification:
  • if unpack fails (excluding invalid password errors) and quick par-check does not find any errors or quick par-check was already performed the full par-check is performed;
  • this helps in rare situations when files were correctly downloaded (and therefore assumed correct by quick par-check) but incorrectly written into disk due to abnormal program termination (caused by bugs or hardware crashes);
  • Added news server name to message "Cancelling hanging download ..." to help identifying problematic servers;
  • Added column "age" to history tab in web-interface;
  • Paths with drive letters are now considered absolute on all OSes not only on Windows because there are also other OSes using drive letters;
  • Fixed: RPC-method "editqueue" with action "HistoryReturn" caused a crash if the history item did not have any remaining (parked) files;
  • Fixed: RPC-method "saveconfig" did not work via XML-RPC (but worked via JSON-RPC);
  • Fixed: a superfluous comma at the end of option "TaskX.Time" was interpreted as an error or may cause a crash;

New in NZBGet 14.0 R1137 Dev (Oct 6, 2014)

  • option "ParThreads" can now be set to "0" (which is a default setting now) to let the program automatically determine the number of CPU cores (works on major modern platforms);
  • when option "ContinuePartial" is active the current state is saved not more often than once per second instead of after every downloaded article; this significantly reduce the amount of disk writings on high download speeds;
  • added commands "PausePostProcess" and "UnpausePostProcess" to scheduler;
  • unpack is now automatically immediately aborted if unrar reports CRC errors;
  • unpack is now immediately aborted if unrar reports wrong password (works for rar5 as well as for older formats); the unpack error status "PASSWORD" is now set for older formats too (not only rar5);
  • improved scan-scripts: if the category of nzb-file is changed by the scan-script the assigned post-processing scripts are now automatically reset according to the new category;
  • quick par verification now works even if articles do not contain CRCs (although it is a rare case);
  • added missing new line character at the end of the help screen printed by "nzbget -h";
  • fixed: env. var "NZBPP_PARSTATUS" were not set to "FAILURE" for deleted/marked downloads (bug introduced in v14);
  • fixed: relative destination paths (options "DestDir" and "CategoryX.DestDir") caused failures during unrar;
  • fixed: splitted .cbr-files were not properly joined;
  • fixed: inner files (files listed in nzb) bigger than 2GB could not be downloaded (fix for windows);
  • improvement in duplicate check:
  • if a new download with empty dupekey and empty dupescore is marked as "dupe" and the another download with the same name have non empty dupekey or dupescore these properties are copied from that download;
  • this is useful because the new download is most likely another upload of the same file and it should have the same duplicate properties for best duplicate handling results;
  • improved cleanup:
  • disk cleanup is now not performed if unrar failed even if par-check was successful;
  • queue cleanup (for remaining par2-files) is now made more smarter: the files are kept (parked) if they can be used by command "post-process again" and are removed otherwise;

New in NZBGet 14.0 R1070 dev (Jul 28, 2014)

  • Added article cache:
  • new option "ArticleCache" defines memory limit to use for cache;
  • when cache is active the articles are written into cache first and then all flushed to disk into the destination file;
  • article cache reduces disk IO and may reduce file fragmentation improving post-processing speed (unpack);
  • it works with both writing modes (direct write on and off);
  • when option "DirectWrite" is disabled the cache should be big enough (for best performance) to accommodate all articles of one file (sometimes up to 500 MB) in order to avoid writing articles into temporary files, otherwise temporary files are used for articles which do not fit into cache;
  • when used in combination with DirectWrite there is no such limitation and even a small cache (100 MB or even less) can be used effectively; when the cache becomes full it is flushed automatically (directly into destination file) providing room for new articles;
  • new row in the "statistics and status dialog" in web-interface indicates the amount of memory used for cache;
  • new fields "ArticleCacheLo", "ArticleCacheHi" and "ArticleCacheMB" returned by RPC-method "status";
  • see forum topic [New Feature] Article memory cache for more info;
  • Renamed option "WriteBufferSize" into "WriteBuffer":
  • changed the dimension - now option is set in kilobytes instead of bytes;
  • old name and value are automatically converted;
  • if the size of article is below the value defined by the option, the buffer is allocated with the articles size (to not waste memory);
  • therefore the special value "-1" is not required anymore; during conversion "-1" is replaced with "1024" (1 megabyte) but it can be of course manually changed to any other value later;
  • Added quick file verification during par-check/repair:
  • if par-repair is required for download the files downloaded without errors are verified quickly by comparing their checksums against the checksums stored in the par2-file;
  • this makes the verification of undamaged files almost instant;
  • damaged files are verified as usual;
  • new option "ParQuick" (active by default);
  • added support for block-by-block scan of files during verification, which improves scan speed of damaged files;
  • the quick par-verification requires a patch for libpar2 (see nzbget.net/libpar2 for details);
  • see forum topic [New Feature] Quick par verification for more info;
  • Added log file rotation:
  • options "CreateLog" and "ResetLog" replaced with new option "WriteLog (none, append, reset, rotate)";
  • new option "RotateLog" defines rotation period;
  • Improved joining of splitted files:
  • instead of performing par-repair the files are now joined by unpacker, which is much faster;
  • the files splitted before creating of par-sets are now joined as well (they were not joined in v13 because par-repair has nothing to repair in this case);
  • the unpacker can detect missing fragments and requests par-check if necessary;
  • Added per-nzb time and size statistics:
  • total time, download, verify, repair and unpack times, downloaded size and average speed, shown in history details dialog via click on the row with total size in statistics block;
  • RPC-methods "listgroups" and "history" return new fields: "DownloadedSizeLo", "DownloadedSizeHi", "DownloadedSizeMB", "DownloadTimeSec", "PostTotalTimeSec", "ParTimeSec", "RepairTimeSec", "UnpackTimeSec";
  • see forum topic [New Feature] Per-nzb time statistics for screenshots and more info;
  • pp-script "EMail.py" now supports mail server relays (thanks to l2g for the patch);
  • when compiled in debug mode new field "process id" is printed to the file log for each row (it is easier to identify processes than threads);
  • if an nzb has only few failed articles it may have completion shown as 100%; now it is shown as 99.9% to indicate that not everything was successfully downloaded;

New in NZBGet 13.0 (Jul 18, 2014)

  • Reworked download queue:
  • new dialog to build filters in web-interface with instant preview;
  • queue now holds nzb-jobs instead of individual files (contained within nzbs);
  • this drastically improves performance when managing queue containing big nzb-files on operations such as pause/unpause/move items;
  • tested with queue of 30 nzb-files each 40-100GB size (total queue size 1.5TB) - queue managing is fast even on slow device;
  • limitation: individual files (contained within nzbs) now cannot be moved beyond nzb borders (in older version it was possible to move individual files freely and mix files from different nzbs, although this feature was not supported in web-interface and therefore was not much known);
  • this change opens doors for further speed optimizations and integration of download queue with post-processing queue and possibly url-queue;
  • current download data such as remained size or size of paused files is now internally automatically updated on related events (download of article is completed, queue edited, etc.);
  • this eliminates the need of calculating this data upon each RPC-request (from web-interface) and greatly decrease CPU load of processing RPC-requests when having large download queue (and/or large nzb-files in queue);
  • field "Priority" was removed from individual files;
  • instead nzb-files (collections) now have field "Priority";
  • nzb-files now also have new fields "MinTime" and "MaxTime", which are set when nzb-file is parsed and then kept;
  • this eliminates the need of recalculation file statistics (min and max priority, min and max time);
  • removed action "FileSetPriority" from RPC-command "editqueue";
  • removed action "I" from remote command "--edit/-E" for individual files (now it is allowed for groups only);
  • removed few (not more necessary) checks from duplicate manager;
  • merged post-processing queue into main download queue;
  • changing the order of (pp-queued) items in the download queue now also means changing the order of post-processing jobs;
  • priorities of downloads are now respected when picking the next queued post-processing job;
  • the moving of download items in web-interface is now allowed for downloads queued for post-processing;
  • removed actions of remote command "--edit/-E" and of RPC-method "editqueue" used to move post-processing jobs in the post-processing queue (the moving of download items should be used instead);
  • remote command "-E/--edit" and RPC-method "editqueue" now use NZBIDs of groups to edit groups (instead of using ID of any file in the group as in older versions);
  • remote command "-L/--list" for groups (G) and group-view in curses-frontend now print NZBIDs instead of "FirstID-LastID";
  • RPC-method "listgroups" returns NZBIDs in fields "FirstID" and "LastID", which are usually used as arguments to "editqueue" (for compatibility with existing third-party software);
  • items queued for post-processing and not having any remaining files now can be edited (to cancel post-processing), which was not possibly before due to lack of "LastID" in empty groups;
  • edit commands for download queue and post-processing queue are now both use the same IDs (NZBIDs);
  • merged url queue into main download queue;
  • urls added to queue are now immediately shown in web-interface;
  • urls can be reordered and deleted;
  • when urls are fetched the downloaded nzb-files are put into queue at the positions of their urls;
  • this solves the problem with fetched nzb-files ordered differently than the urls if the fetching of upper (position wise) urls were completed after the lower urls;
  • removed options "ReloadUrlQueue" and "ReloadPostQueue" since there are no separate url- and post-queues anymore;
  • nzb-files added via urls have new field "URL" which can be accessed via RPC-methods "listgroups" and "history";
  • new env. var. "NZBNP_URL", "NZBNA_URL" and "NZBPP_URL" passed to scan-, queue- and pp-scripts;
  • removed remote command "--list U", urls are now shown as groups by command "--list G";
  • RPC-method "urlqueue" is still supported for compatibility but should not be used since the urls are now returned by method "listgroups", the entries have new field "Kind" which can be "NZB" or "URL";
  • Added collecting of download volume statistics data per news server:
  • in web-interface the data is shown as chart in "Statistics and Status" dialog;
  • new RPC-method "servervolumes" returns the collected data;
  • new RPC-method "resetservervolume" to reset the custom counter;
  • Fast par-renamer now automatically detects and renames misnamed (obfuscated) par2-files;
  • For downloads not having any (obviously named) par2-files the critical health is assumed 85% instead of 100% as the absense of par2-files suggests:
  • this avoids the possibly false triggering of health-check action (delete or pause) for downloads having misnamed (obfuscated) par2-files;
  • combined with improved fast par-renamer this provides proper processing of downloads with misnamed (obfuscated) par2-files;
  • Fast par-renamer now detects missing files (files listed in par2-files but not present on disk):
  • when checking for missing files the files whose extensions match with option "ExtCleanupDisk" are ignored now (to avoid time consuming restoring of files which will be deleted later anyway);
  • added option "ParIgnoreExt" which lists files which do not trigger par-repair if they are missing (similar to option "ExtCleanupDisk" but those files are not deleted during cleanup);
  • Added new choice "Always" for option "ParCheck":
  • it forces the par-check for every (even undamaged) download but in contrast to choice "Force" only one par2-file is downloaded first;
  • additional files are downloaded if needed;
  • Improved par-check for damaged collections with multiple par-sets and having missing files:
  • only orphaned files (not belonging to any par-set) are scanned when looking for missing files;
  • this greatly decrease the par-check time for big collections;
  • Eliminated the distinction between manual pause and soft-pause:
  • there is only one pause register now;
  • options "ParPauseQueue", "UnpackPauseQueue" and "ScriptPauseQueue" do not change the state of the pause but instead are respected directly;
  • RPC-methods "pausedownload2" and "resumedownload2" are aliases to "pausedownload" and "resumedownload" (kept for compatibility);
  • field "Download2Paused" of RPC-method "status" is an alias to "DownloadPaused" (kept for compatibility);
  • action "D2" of remote commands "--pause/-P" and "--unpause/-U" is not supported anymore;
  • Implemented general scripts concept:
  • the concept is a logical extension of the post-processing scripts concept initially introduced in v11;
  • the general scripts concept applies to all scripts used in the program: scan-script, queue-script and scheduler-script (in addition to post-processing scripts);
  • option "NzbProcess" renamed to "ScanScript";
  • option "NzbAddedProcess" renamed to "QueueScript";
  • option "DefScript" and "CategoryX.DefScript" renamed to "PostScript" and "CategoryX.PostScript" (options with old names are recognized and automatically converted on first settings saving);
  • new option "TaskX.Script";
  • old option "TaskX.Process" kept for scheduling of external programs not related to nzbget (to avoid writing of intermediate proxy scripts);
  • Scan-script, queue-script and scheduler-script now work similar to post-processing scripts:
  • scripts must be put into scripts-directory;
  • scripts can be configured via web-interface and can have options;
  • multiple scripts can be chosen for each scripts-option, all chosen scripts are executed;
  • program and script options are passed to the script as env. variables;
  • renamed default directory with scripts from "ppscripts" to "scripts";
  • script signature indicates the type of script (post-processing, scan, queue or scheduler);
  • one script can have mixed signature allowing it to be used for multiple purposes (for example a notification script can send a notification on both events: after adding to queue and after post-processing);
  • result of RPC-method "configtemplates" has new fields "PostScript", "ScanScript", "QueueScript", "SchedulerScript" to indicate the purpose of the script;
  • queue-script (formerly NzbAddedProcess) has new parameter "NZBNA_EVENT" indicating the reason of calling the script; currently the script is called only after adding of files to download queue and therefore the parameter is always set to "NZB_ADDED" but the queue-script can be called on other events in the future too;
  • Post-processing scripts now have two new parameters:
  • env. var "NZBPP_STATUS" indicates the status of download including the total status (SUCCESS, FAILURE, etc.) and the detail field (for example in case of failures: PAR, UNPACK, etc.);
  • env. var "NZBPP_TOTALSTATUS" is equal to the total status of parameter "NZBPP_STATUS" and is provided for convenience (to avoid parsing of "NZBPP_STATUS");
  • the new parameters provide a simple way for pp-scripts to determine download status without a guess work needed in previous versions;
  • parameters "NZBPP_PARSTATUS" and "NZBPP_UNPACKSTATUS" are now considered deprecated (still passed for compatibility);
  • updated script "EMail.py" to use new parameters "NZBPP_TOTALSTATUS" and "NZBPP_STATUS" instead of "NZBPP_PARSTATUS" and "NZBPP_UNPACKSTATUS";
  • When changing category in web-interface the post-processing parameters are now automatically updated according to new category settings:
  • only parameters which are different in old and new category are changed;
  • parameters which present in both or in neither categories are not changed;
  • that ensures that only the relevant parameters are updated and parameters which were manually changed by user remain they settings when it make sense;
  • in the "download details dialog" the new parameters are updated on the postprocess-tab directly after changing of category and can be controlled before saving;
  • in the "edit multiple downloads dialog" the parameters are updated individually for each download on saving;
  • new action "CP" of remote command "--edit/-E" for groups to set category and apply parameters;
  • new action "GroupApplyCategory of RPC-method "editqueue" for the same purpose;
  • Changed the way option "ContinuePartial" works:
  • now the information about completed articles is stored in a special file in QueueDir;
  • when option "DirectWrite" is active no separate flag-files per article are created in TempDir;
  • the file contains additional information, which were not stored/available before;
  • Improved per-server/per-nzb article completion statistics:
  • the statistics are now available for active downloads in details dialog (not only for history);
  • the info on that page is constantly updated as long as the page is active (unless refresh is disabled);
  • download age info removed from details dialog to save place (it is shown in the download list anyway);
  • if backup news-servers start to be used for nzb-file a badge appears in the download list showing the percentage of articles downloaded from backup servers;
  • click on the badge opens download details dialog directly on the completion page;
  • per-server/per-nzb article completion statistics are now available via RPC-method "listgroups" for active downloads (not only for "history");
  • Improved RPC-API:
  • RPC-method "listgroups" now returns info about post-processing similar to info returned by method "postqueue";
  • RPC-method "postqueue" is obsolete now;
  • web-interface requires less requests to NZBGet on each page update and it is now easier for third-party developers to obtain the info about download and post-processing status (no need to merge download queue and post queue);
  • RPC-method "listgroups" now returns new field "Status" making it easier for third-party apps to determine the status of download entry;
  • new field "Status" in RPC-method "history" to allow third-party apps easier determine the status of an item without inspecting status-fields of every processing step;
  • changed web-interface to use new field "Status";
  • method "append" now returns id of added nzb-file or "0" on an error;
  • this makes it easier for third-party apps to track added nzb-files;
  • for backward compatibility with older software expecting a boolean result the old version of method "append" is still supported;
  • the new version of method "append" has a different signature (order of parameters);
  • parameter "content" can now be either nzb-file content (encoded in base 64) or an URL;
  • this makes the method "appendurl" obsolete (still supported for compatibility);
  • if an URL was added to queue the queue entry created for fetched nzb-file has the same "NZBID" for easier tracking;
  • Added force-priorities:
  • downloads with priorities equal to or greater than 900 are downloaded and post-processed even if the program is in paused state (force mode);
  • in web-interface the combo for choosing priority has new entry "force" (priority value 900);
  • new fields "ForcedSizeLo", "ForcedSizeHi" and "ForcedSizeMB" returned by RPC-method "status";
  • history items now preserve "NZBID" from queue items; that makes the tracking of items across queue and history easier for third-party apps;
  • field "NZBID" returned by RPC-method "history" is now available for history items of all kinds (NZB, URL, DUP); field "ID" is deprecated and should not be used;
  • post-processing scripts which move the whole download into a new location can inform the program about new location using command "[NZB] DIRECTORY=/new/path", allowing other scripts to process files further;
  • added support for power management on windows to avoid pc going into sleep mode during download or post-processing;
  • apostrophe is not considered an invalid file name character anymore;
  • adjusted modules initialization to avoid possible bugs due to delayed thread starts;
  • reorganized source code directory structure: created directory "daemon" with several subdirectories and put all source code files there;
  • added new option "PropagationDelay", which sets the minimum post age to download; newer posts are kept on hold in download queue until they get older than the defined delay, after that they are downloaded;
  • download speeds above 1024 KB/s are now indicated in MB/s;
  • data sizes above 1000 GB are now shown as TB in web-interface (instead of GB);
  • splitted files are now joined automatically (again);
  • adjusted modules initialization to avoid possible bugs due to delayed thread starts;
  • extended info printed by remote command "nzbget -B dump" (for debug purposes);
  • eliminated loop waiting time in queue coordinator on certain conditions - may improve performance on very high speed connections;
  • increased few wait intervals which were unnecessary too small;
  • improved error reporting: added error check when closing article file for writing and when deleting files or directories;
  • when building nzbget if both OpenSSL and GnuTLS are available now using OpenSSL by default (the preferred library can still be selected with configure-parameter --with-tlslib=OpenSSL/GnuTLS);
  • windows version is now configured to use OpenSSL instead of GnuTLS; windows binaries provided on download page now use OpenSSL;
  • column "age" in web-interface now shows minutes for recent posts (instead of "0 h");
  • remote command "-B dump" now can be used also in release (non-debug) versions and prints useful debug data as "INFO" instead of "DEBUG";
  • to detect daylight saving activation/deactivation the time zone information is now checked every minute if a download is active or once in 3 hours if the program is in stand-by; these delays should work well with hibernation mode on synology);
  • pp-script "EMail.py" now takes the status of previous pp-scripts into account and report a failure if any of the scripts has failed;
  • updated all links to go to new domain (nzbget.net);
  • impoved error reporting if unpacker or par-renamer fail to move files;
  • removed libpar2-patches from NZBGet source tree; the documentation now suggests to use the libpar2 version maintained by Debian/Ubuntu team, which already includes all necessary patches;
  • removed patches to create libpar2 and libsigc++ project files for Visual Studio on Windows, no one needed them anyway;
  • fixed: the program could crash during cleanup if files with invalid timestamps were found in the directory (windows only);
  • fixed: RSS feed preview dialog displayed slightly incorrect post ages because of the wrong time zone conversion;
  • fixed: sometimes URLs were removed too early from the feed history causing them to be detected as "new" and fetched again; if duplicate check was not active the same nzb-files could be downloaded again;
  • fixed: strange (damaged?) par2-files could cause a crash during par-renaming;
  • fixed: damaged nzb-files containing multiple par-sets and not having enough par-blocks could cause a crash during par-check;
  • fixed: if during par-repair the downloaded extra par-files were damaged and the repair was terminated with failure status the post-processing scripts were executed twice sometimes;
  • fixed: post-processing scripts were not executed in standalone mode ("nzbget /path/to/file.nzb");
  • fixed: renaming or deleting of temporary files could fail, especially when options "UnpackPauseQueue" and "ScriptPauseQueue" were not active (windows only);
  • fixed: per-server/per-nzb article completion statistics could be inaccurate for nzb-files whose download were interrupted by reload/restart;
  • fixed: after deleting servers from config file the program could crash on start when loading server volume statistics data from disk;
  • fixed: download speeds above approx. 70 MB/s were not indicated correctly in web-interface and by RPC-method "status";
  • fixed: cancelling of active par-job sometimes didn't work;
  • fixed: par-check could hang on renamed and splitted files;
  • fixed: the program could crash during parsing of malformed nzb-files;
  • fixed: errors during loading of queue from disk state may render the already loaded parts useless too; now at least these parts of queue are used;
  • fixed: queue was not locked during loading on program start and that could cause problems;
  • fixed: data sizes exactly equal to 10, 100, 1000 MB or GB were formatted using 4 digits instead of 3 (one digit after decimal point too much);
  • fixed: if post-processing step "move" failed, the command "post-process again" did not try to move again;
  • fixed: nzb-files were sometimes not deleted from NzbDir (option "NzbCleanupDisk");
  • fixed: scheduler command "FetchFeed" did not work properly with parameter "0" (fetch all feeds).
  • fixed: port number was not sent in headers when downloading from URLs which could cause issues with RSS for web-sites using non-standard http ports;
  • fixed: queued nzb-files was not deleted from disk when deleting download without history tracking;

New in NZBGet 13.0 Build 1049 Dev (Jul 4, 2014)

  • fixed: current download could be damaged if the program was restarted during download and the option "ContinuePartial" was active (bug introduced in v13);
  • fixed: port number was not sent in headers when downloading from URLs which could cause issues with RSS for web-sites using non-standard http ports;
  • fixed: queued nzb-files was not deleted from disk when deleting download without history tracking;
  • fixed: check for file or directory existense could fail sometimes (Windows only, bug introduced in v13).
  • Reworked download queue:
  • queue now holds nzb-jobs instead of individual files (contained within nzbs);
  • this drastically improves performance when managing queue containing big nzb-files on operations such as pause/unpause/move items;
  • tested with queue of 30 nzb-files each 40-100GB size (total queue size 1.5TB) - queue managing is fast even on slow device;
  • limitation: individual files (contained within nzbs) now cannot be moved beyond nzb borders (in older version it was possible to move individual files freely and mix files from different nzbs, although this feature was not supported in web-interface and therefore was not much known);
  • this change opens doors for further speed optimizations and integration of download queue with post-processing queue and possibly url-queue;
  • current download data such as remained size or size of paused files is now internally automatically updated on related events (download of article is completed, queue edited, etc.);
  • this eliminates the need of calculating this data upon each RPC-request (from web-interface) and greatly decrease CPU load of processing RPC-requests when having large download queue (and/or large nzb-files in queue);
  • field "Priority" was removed from individual files;
  • instead nzb-files (collections) now have field "Priority";
  • nzb-files now also have new fields "MinTime" and "MaxTime", which are set when nzb-file is parsed and then kept;
  • this eliminates the need of recalculation file statistics (min and max priority, min and max time);
  • removed action "FileSetPriority" from RPC-command "editqueue";
  • removed action "I" from remote command "--edit/-E" for individual files (now it is allowed for groups only);
  • removed few (not more necessary) checks from duplicate manager;
  • merged post-processing queue into main download queue;
  • changing the order of (pp-queued) items in the download queue now also means changing the order of post-processing jobs;
  • priorities of downloads are now respected when picking the next queued post-processing job;
  • the moving of download items in web-interface is now allowed for downloads queued for post-processing;
  • removed actions of remote command "--edit/-E" and of RPC-method "editqueue" used to move post-processing jobs in the post-processing queue (the moving of download items should be used instead);
  • remote command "-E/--edit" and RPC-method "editqueue" now use NZBIDs of groups to edit groups (instead of using ID of any file in the group as in older versions);
  • remote command "-L/--list" for groups (G) and group-view in curses-frontend now print NZBIDs instead of "FirstID-LastID";
  • RPC-method "listgroups" returns NZBIDs in fields "FirstID" and "LastID", which are usually used as arguments to "editqueue" (for compatibility with existing third-party software);
  • items queued for post-processing and not having any remaining files now can be edited (to cancel post-processing), which was not possibly before due to lack of "LastID" in empty groups;
  • edit commands for download queue and post-processing queue are now both use the same IDs (NZBIDs);
  • merged url queue into main download queue;
  • urls added to queue are now immediately shown in web-interface;
  • urls can be reordered and deleted;
  • when urls are fetched the downloaded nzb-files are put into queue at the positions of their urls;
  • this solves the problem with fetched nzb-files ordered differently than the urls if the fetching of upper (position wise) urls were completed after the lower urls;
  • removed options "ReloadUrlQueue" and "ReloadPostQueue" since there are no separate url- and post-queues anymore;
  • nzb-files added via urls have new field "URL" which can be accessed via RPC-methods "listgroups" and "history";
  • new env. var. "NZBNP_URL", "NZBNA_URL" and "NZBPP_URL" passed to scan-, queue- and pp-scripts;
  • removed remote command "--list U", urls are now shown as groups by command "--list G";
  • RPC-method "urlqueue" is still supported for compatibility but should not be used since the urls are now returned by method "listgroups", the entries have new field "Kind" which can be "NZB" or "URL";
  • Added collecting of download volume statistics data per news server:
  • in web-interface the data is shown as chart in "Statistics and Status" dialog;
  • new RPC-method "servervolumes" returns the collected data;
  • new RPC-method "resetservervolume" to reset the custom counter;
  • fast par-renamer now automatically detects and renames misnamed (obfuscated) par2-files;
  • for downloads not having any (obviously named) par2-files the critical health is assumed 85% instead of 100% as the absense of par2-files suggests;
  • this avoids the possibly false triggering of health-check action (detele or pause) for downloads having misnamed (obfuscated) par2-files;
  • combined with improved fast par-renamer this provides proper processing of downloads with misnamed (obfuscated) par2-files;
  • fast par-renamer now detects missing files (files listed in par2-files but not present on disk):
  • when checking for missing files the files whose extensions match with option "ExtCleanupDisk" are ignored now (to avoid time consuming restoring of files which will be deleted later anyway);
  • added option "ParIgnoreExt" which lists files which do not trigger par-repair if they are missing (similar to option "ExtCleanupDisk" but those files are not deleted during cleanup);
  • improved par-check for damaged collections with multiple par-sets and having missing files:
  • only orphaned files (not belonging to any par-set) are scanned when looking for missing files;
  • this greatly decrease the par-check time for big collections;
  • eliminated the distinction between manual pause and soft-pause;
  • there is only one pause register now;
  • options "ParPauseQueue", "UnpackPauseQueue" and "ScriptPauseQueue" do not change the state of the pause but instead are respected directly;
  • RPC-methods "pausedownload2" and "resumedownload2" are aliases to "pausedownload" and "resumedownload" (kept for compatibility);
  • field "Download2Paused" of RPC-method "status" is an alias to "DownloadPaused" (kept for compatibility);
  • action "D2" of remote commands "--pause/-P" and "--unpause/-U" is not supported anymore;
  • implemented general scripts concept:
  • the concept is a logical extension of the post-processing scripts concept initially introduced in v11;
  • the general scripts concept applies to all scripts used in the program: scan-script, queue-script and scheduler-script (in addition to post-processing scripts);
  • option "NzbProcess" renamed to "ScanScript";
  • option "NzbAddedProcess" renamed to "QueueScript";
  • option "DefScript" and "CategoryX.DefScript" renamed to "PostScript" and "CategoryX.PostScript" (options with old names are recognized and automatically converted on first settings saving);
  • new option "TaskX.Script";
  • old option "TaskX.Process" kept for scheduling of external programs not related to nzbget (to avoid writing of intermediate proxy scripts);
  • scan-script, queue-script and scheduler-script now work similar to post-processing scripts:
  • scripts must be put into scripts-directory;
  • scripts can be configured via web-interface and can have options;
  • multiple scripts can be chosen for each scripts-option, all chosen scripts are executed;
  • program and script options are passed to the script as env. variables;
  • renamed default directory with scripts from "ppscripts" to "scripts";
  • script signature indicates the type of script (post-processing, scan, queue or scheduler);
  • one script can have mixed signature allowing it to be used for multiple purposes (for example a notification script can send a notification on both events: after adding to queue and after post-processing);
  • result of RPC-method "configtemplates" has new fields "PostScript", "ScanScript", "QueueScript", "SchedulerScript" to indicate the purpose of the script;
  • queue-script (formerly NzbAddedProcess) has new parameter "NZBNA_EVENT" indicating the reason of calling the script; currently the script is called only after adding of files to download queue and therefore the parameter is always set to "NZB_ADDED" but the queue-script can be called on other events in the future too;
  • post-processing scripts now have two new parameters:
  • env. var "NZBPP_STATUS" indicates the status of download including the total status (SUCCESS, FAILURE, etc.) and the detail field (for example in case of failures: PAR, UNPACK, etc.);
  • env. var "NZBPP_TOTALSTATUS" is equal to the total status of parameter "NZBPP_STATUS" and is provided for convenience (to avoid parsing of "NZBPP_STATUS");
  • the new parameters provide a simple way for pp-scripts to determine download status without a guess work needed in previous versions;
  • parameters "NZBPP_PARSTATUS" and "NZBPP_UNPACKSTATUS" are now considered deprecated (still passed for compatibility);
  • updated script "EMail.py" to use new parameters "NZBPP_TOTALSTATUS" and "NZBPP_STATUS" instead of "NZBPP_PARSTATUS" and "NZBPP_UNPACKSTATUS";
  • when changing category in web-interface the post-processing parameters are now automatically updated according to new category settings:
  • only parameters which are different in old and new category are changed;
  • parameters which present in both or in neither categories are not changed;
  • that ensures that only the relevant parameters are updated and parameters which were manually changed by user remain they settings when it make sense;
  • in the "download details dialog" the new parameters are updated on the postprocess-tab directly after changing of category and can be controlled before saving;
  • in the "edit multiple downloads dialog" the parameters are updated individually for each download on saving;
  • new action "CP" of remote command "--edit/-E" for groups to set category and apply parameters;
  • new action "GroupApplyCategory of RPC-method "editqueue" for the same purpose;
  • changed the way option "ContinuePartial" works:
  • now the information about completed articles is stored in a special file in QueueDir;
  • when option "DirectWrite" is active no separate flag-files per article are created in TempDir;
  • the file contains additional information, which were not stored/available before;
  • improved per-server/per-nzb article completion statistics:
  • the statistics are now available for active downloads in details dialog (not only for history);
  • the info on that page is constantly updated as long as the page is active (unless refresh is disabled);
  • download age info removed from details dialog to save place (it is shown in the download list anyway);
  • if backup news-servers start to be used for nzb-file a badge appears in the download list showing the percentage of articles downloaded from backup servers;
  • click on the badge opens download details dialog directly on the completion page;
  • per-server/per-nzb article completion statistics are now available via RPC-method "listgroups" for active downloads (not only for "history");
  • improved RPC-API:
  • method "append" now returns id of added nzb-file or "0" on an error;
  • this makes it easier for third-party apps to track added nzb-files;
  • for backward compatibility with older software expecting a boolean result the old version of method "append" is still supported;
  • the new version of method "append" has a different signature (order of parameters);
  • parameter "content" can now be either nzb-file content (encoded in base 64) or an URL;
  • this makes the method "appendurl" obsolete (still supported for compatibility);
  • if an URL was added to queue the queue entry created for fetched nzb-file has the same "NZBID" for easier tracking
  • added force-priorities:
  • downloads with priorities equal to or greater than 900 are downloaded and post-processed even if the program is in paused state (force mode);
  • in web-interface the combo for choosing priority has new entry "force" (priority value 900);
  • new fields "ForcedSizeLo", "ForcedSizeHi" and "ForcedSizeMB" returned by RPC-method "status";
  • post-processing scripts which move the whole download into a new location can inform the program about new location using command "[NZB] DIRECTORY=/new/path", allowing other scripts to process files further;
  • added support for power management on windows to avoid pc going into sleep mode during download or post-processing;
  • apostrophe is not considered an invalid file name character anymore;
  • adjusted modules initialization to avoid possible bugs due to delayed thread starts;
  • reorganized source code directory structure: created directory 'daemon' with several subdirectories and put all source code files there;
  • added new option "PropagationDelay", which sets the minimum post age to download; newer posts are kept on hold in download queue until they get older than the defined delay, after that they are downloaded;
  • download speeds above 1024 KB/s are now indicated in MB/s;
  • data sizes above 1000 GB are now shown as TB in web-interface (instead of GB);
  • splitted files are now joined automatically (again);
  • adjusted modules initialization to avoid possible bugs due to delayed thread starts;
  • extended info printed by remote command "nzbget -B dump" (for debug purposes);
  • eliminated loop waiting time in queue coordinator on certain conditions - may improve performance on very high speed connections;
  • increased few wait intervals which were unnecessary too small;
  • improved error reporting: added error check when closing article file for writing and when deleting files or directories;
  • when building nzbget if both OpenSSL and GnuTLS are available now using OpenSSL by default (the preferred library can still be selected with configure-parameter --with-tlslib=OpenSSL/GnuTLS);
  • windows version is now configured to use OpenSSL instead of GnuTLS; windows binaries provided on download page now use OpenSSL;
  • column "age" in web-interface now shows minutes for recent posts (instead of "0 h");
  • remote command "-B dump" now can be used also in release (non-debug) versions and prints useful debug data as "INFO" instead of "DEBUG";
  • to detect daylight saving activation/deactivation the time zone information is now checked every minute if a download is active or once in 3 hours if the program is in stand-by; these delays should work well with hibernation mode on synology);
  • updated all links to go to new domain (nzbget.net);
  • impoved error reporting if unpacker or par-renamer fail to move files;
  • fixed: the program could crash during cleanup if files with invalid timestamps were found in the directory (windows only);
  • fixed: RSS feed preview dialog displayed slightly incorrect post ages because of the wrong time zone conversion;
  • fixed: sometimes URLs were removed too early from the feed history causing them to be detected as "new" and fetched again; if duplicate check was not active the same nzb-files could be downloaded again;
  • fixed: strange (damaged?) par2-files could cause a crash during par-renaming;
  • fixed: damaged nzb-files containing multiple par-sets and not having enough par-blocks could cause a crash during par-check;
  • fixed: if during par-repair the downloaded extra par-files were damaged and the repair was terminated with failure status the post-processing scripts were executed twice sometimes;
  • fixed: post-processing scripts were not executed in standalone mode ("nzbget /path/to/file.nzb");
  • fixed: renaming or deleting of temporary files could fail, especially when options "UnpackPauseQueue" and "ScriptPauseQueue" were not active (windows only);
  • fixed: per-server/per-nzb article completion statistics could be inaccurate for nzb-files whose download were interrupted by reload/restart;
  • fixed: after deleting servers from config file the program could crash on start when loading server volume statistics data from disk;
  • fixed: download speeds above approx. 70 MB/s were not indicated correctly in web-interface and by RPC-method "status";
  • fixed: cancelling of active par-job sometimes didn't work;
  • fixed: par-check could hang on renamed and splitted files;
  • fixed: the program could crash during parsing of malformed nzb-files;
  • fixed: errors during loading of queue from disk state may render the already loaded parts useless too; now at least these parts of queue are used;
  • fixed: queue was not locked during loading on program start and that could cause problems;
  • fixed: data sizes exactly equal to 10, 100, 1000 MB or GB were formatted using 4 digits instead of 3 (one digit after decimal point too much);
  • fixed: if post-processing step "move" failed, the command "post-process again" did not try to move again;
  • fixed: nzb-files were sometimes not deleted from NzbDir (option "NzbCleanupDisk");
  • fixed: scheduler command "FetchFeed" did not work properly with parameter "0" (fetch all feeds).

New in NZBGet 12.0 (Jul 4, 2014)

  • Added RSS feeds support:
  • new options "FeedX.Name", "FeedX.URL", "FeedX.Filter", "FeedX.Interval", "FeedX.PauseNzb", "FeedX.Category", "FeedX.Priority" (section "Rss Feeds");
  • new option "FeedHistory" (section "Download Queue");
  • button "Preview Feed" on settings tab near each feed definition;
  • new toolbar button "Feeds" on downloads tab with menu to view feeds or fetch new nzbs from all feeds (the button is visible only if there are feeds defined in settings);
  • new dialog to see feed content showing status of each item (new, fetched, backlog) with ability to manually fetch selected items;
  • powerful filters for RSS feeds;
  • new dialog to build filters in web-interface with instant preview;
  • Added download health monitoring:
  • health indicates download status, whether the file is damaged and how much;
  • 100% health means no download errors occurred; 0% means all articles failed;
  • there is also a critical health which is calculated for each nzb-file based on number and size of par-files;
  • if during download the health goes down below 100% a health badge appears near download name indicating the necessity of par-repair; the indicator can be orange (repair may be possible) or red (unrepairable) if the health goes down below critical health;
  • new option "HealthCheck" to define what to do with unhealthy (unrepairable) downloads (pause, delete, none);
  • health and critical health are displayed in download-edit dialog; health is displayed in history dialog; if download was aborted (HealthCheck=delete) this is indicated in history dialog;
  • health allows to determine download status for downloads which have unpack and/or par-check disabled; for such downloads the status in history is shown based on health: success (health=100%), damaged (health > critical) or failure (health < critical);
  • par-check is now automatically started for downloads having health below 100%; this works independently of unpack (even if unpack is disabled);
  • for downloads having health less than critical health no par-check is performed (it would fail); Instead the par-check status is set to "failure" automatically saving time of actual par-check;
  • new fields "Health" and "CriticalHealth" are returned by RPC-Method "listgroups";
  • new fields "Health", "CriticalHealth", "Deleted" and "HealthDeleted" are returned by RPC-Method "history";
  • new parameters "NZBPP_HEALTH" and "NZBPP_CRITICALHEALTH" are passed to pp-scripts;
  • Added collecting of server usage statistical data for each download:
  • number of successful and failed article downloads per news server;
  • new page in history dialog shows collected statistics;
  • new fields in RPC-method "history": ServerStats (array), TotalArticles, SuccessArticles, FailedArticles;
  • new env. vars passed to pp-scripts: NZBPP_TOTALARTICLES, NZBPP_SUCCESSARTICLES, NZBPP_FAILEDARTICLES and per used news server: NZBPP_SERVERX_SUCCESSARTICLES, NZBPP_SERVERX_FAILEDARTICLES;
  • also new env.var HEALTHDELETED;
  • Added smart duplicates feature:
  • mostly for use with RSS feeds;
  • automatic detection of duplicate nzb-files to avoid download of duplicates;
  • nzb-files can be also manually marked as duplicates;
  • if download fails - automatically choose another release (duplicate);
  • if download succeeds all remaining duplicates are removed from queue;
  • download items have new properties to tune duplicate handling behavior: duplicate key, duplicate score and duplicate mode;
  • if download was deleted by duplicate check its status in the history is shown as "DUPE";
  • new actions "GroupSetDupeKey", "GroupSetDupeScore", "GroupSetDupeMode", "HistorySetDupeKey", "HistorySetDupeScore", "HistorySetDupeMode", "HistoryMarkBad" and "HistoryMarkGood" of RPC-command "editqueue"; new actions "B" and "G" of command "--edit/-E" for history items (subcommand "H");
  • when deleting downloads from queue there are three options now: "move to history", "move to history as duplicate" and "delete without history tracking";
  • new actions "GroupDupeDelete", "GroupFinalDelete" and "HistorySetDupeBackup" in RPC-method "editqueue";
  • RPC-commands "listgroups", "postqueue" and "history" now return more info about nzb-item (many new fields);
  • removed option "MergeNzb" because it conflicts with duplicate handling, items can be merged manually if necessary;
  • automatic detection of exactly same nzb-files (same content) coming from different sources (different RSS feeds etc.); individual files (inside nzb-file) having extensions listed in option "ExtCleanupDisk" are excluded from content comparison (unless these are par2-files, which are never excluded);
  • when history item expires (as defined by option "KeepHistory") and the duplicate check is active (option "DupeCheck") the item is not completely deleted from history; instead the amount of stored data reduces to minimum required for duplicate check (about 200 bytes vs 2000 bytes for full history item);
  • such old history items are not shown in web-interface by default (to avoid transferring of large amount of history items);
  • new button "Hidden" in web-interface to show hidden history items; the items are marked with badge "hidden";
  • RPC-method "editqueue" has now two actions to delete history records: "HistoryDelete", "HistoryFinal"; action "HistoryDelete" which has existed before now hides records, already hidden records are ignored;
  • added functions "Mark as Bad" and "Mark as Good" for history items;
  • duplicate properties (dupekey, dupescore and dupemode) can now be viewed and changed in download-edit-dialog and history-edit-dialog via new command "Duplicate properties" in actions menu;
  • created NZBGet.app - NZBGet is now a user friendly Mac OSX application with easy installation and seamless integration into OS UI: works in background, is controlled from a web-browser, few important functions are accessible via menubar icon;
  • Added automatic updates:
  • new button "Check for updates" on settings tab of web-interface, in section "SYSTEM", initiates check and shows dialog allowing to install new version;
  • it is possible to choose between stable, testing and development branches;
  • this feature is for end-users using binary packages created and updated by maintainers, who need to write an update script specific for platform;
  • the script is then called by NZBGet when user clicks on install-button;
  • the script must download and install new version;
  • news servers can now be temporarily disabled via speed limit dialog without reloading of the program:
  • new option "ServerX.Active" to disable servers via settings;
  • new option "ServerX.Name" to use for logging and in UI;
  • changed the way how option "Unpack" works:
  • instead of enabling/disabling the unpacker as a whole, it now defines the initial value of post-processing parameter "Unpack" for nzb-file when it is added to queue;
  • this makes it now possible to disable Unpack globally but still enable it for selected nzb-files;
  • new option "CategoryX.Unpack" to set unpack on a per category basis;
  • combined all footer buttons into one button "Actions" with menu:
  • in download-edit-dialog: "Pause/Resume", "Delete" and "Cancel Post-Processing";
  • in history-dialog: "Delete", "Post-Process Again" and "Download Remaining Files (Return to Queue)";
  • DirectNZB headers X-DNZB-MoreInfo, X-DNZB-Report and X-DNZB-Details are now processed when downloading URLs and the links "More Info", "Details" and "Report This NZB" are shown in download-edit-dialog and in history-dialog in Actions menu;
  • program can now be stopped via web-interface: new button "shutdown" in section "SYSTEM";
  • added menu "View" to settings page which allows to switch to "Compact Mode" when option descriptions are hidden;
  • added confirmation dialog by leaving settings page if there are unsaved changes;
  • downloads manually deleted from queue are shown with status "deleted" in the history (instead of "unknown");
  • all table columns except "Name" now have fixed widths to avoid annoying layout changes especially during post-processing when long status messages are displayed in the name-column;
  • added filter buttons to messages tab (info, warning, etc.); also changed the color of filter buttons in feed view and feed filter dialogs (from blue to black);
  • added automatic par-renaming of extracted files if archive includes par-files;
  • added support for http redirects when fetching URLs;
  • added new command "Download again" for history items; new action "HistoryRedownload" of RPC-method "editqueue"; for controlling via command line: new action "A" of subcommand "H" of command "--edit/-E";
  • download queue is now saved in a more safe way to avoid potential loss of queue if the program crashes during saving of queue;
  • destination directory for option "CategoryX.DestDir" is not checked/created on program start anymore (only when a download starts for that category); this helps when certain categories are configured for external disks, which are not always connected;
  • added new option "CategoryX.Aliases" to configure category name matching with nzb-sites; especially useful with rss feeds;
  • in RPC-Method "appendurl" parameter "addtop" adds nzb to the top of the main download queue (not only to the top of the URL queue);
  • new logo (thanks to dogzipp for the logo);
  • added support for metatag "password" in nzb-files;
  • pp-scripts which move files can now inform the program about new location by printing text "[NZB] FINALDIR=/path/to/files"; the final path is then shown in history dialog instead of download path;
  • new env-var "NZBPP_FINALDIR" passed to pp-scripts;
  • pp-scripts can now set post-processing parameters by printing command "[NZB] NZBPR_varname=value"; this allows scripts which are executed sooner to pass data for scripts executed later;
  • added new option "AuthorizedIP" to set the list of IP-addresses which may connect without authorization;
  • new option "ParRename" to force par-renaming as a first post-processing step (active by default); this saves an unpack attempt and is even more useful if unpack is disabled;
  • post-processing progress label is now automatically trimmed if it doesn't fill into one line; this avoids layout breaking if the text is too long;
  • reversed the order of priorities in comboboxes in dialogs: the highest priority - at the top, the lowest - at the bottom;
  • small changes in button captions: edit dialogs called from settings page (choose script, choose order, build rss filter) now have buttons "Discard/Apply" instead of "Close/Save"; in all other dialogs button "Close" renamed to "Cancel" unless it was the only button in dialog;
  • small change in css: slightly reduced the max height of modal dialogs to better work on notebooks;
  • options "DeleteCleanupDisk" and "NzbCleanupDisk" are now active by default (in the example config file);
  • extended add-dialog with options "Add paused" and "Disable duplicate check";
  • source nzb-files are now deleted when download-item leaves queue and history (option "NzbCleanupDisk");
  • failed article downloads are now logged as "detail" instead of "warning" to reduce number of warnings for downloads removed from server (DMCA); one warning is printed for a file with a summary of number of failed downloads for the file;
  • tuned algorithm calculating maximum threads limit to allow more threads for backup server connections (related to option "TreadLimit" removed in v11); this may sometimes increase speed when backup servers were used;
  • by adding nzb-file to queue via RPC-methods "append" and "appendurl" the actual format of the file is checked and if nzb-format is detected the file is added even if it does not have .nzb extension;
  • added new option "UrlForce" to allow URL-downloads (including fetching of RSS feeds and nzb-files from feeds) even if download is paused; the option is active by default;
  • destination directory for option "DestDir" is not checked/created on program start anymore (only when a download starts); this helps when DestDir is mounted to a network drive which is not available on program start;
  • added special handling for files ".AppleDouble" and ".DS_Store" during unpack to avoid problems on NAS having support for AFP protocol (used on Mac OSX);
  • history records with failed script status are now shown as "PP-FAILURE" in history list (instead of just "FAILURE");
  • option "DiskSpace" now checks space on "InterDir" in addition to "DestDir";
  • support for rar-archives with non-standard extensions is now limited to file extensions consisting of digits; this is to avoid extracting of rar-archives having non-rar extensions on purpose (example: .cbr);
  • for archives including par-files for renaming of extracted files the par-renaming now works for extracted sub-directories too;
  • if option "ParRename" is disabled (not recommended) unpacker does not initiate par-rename anymore, instead the full par-verify is performed then; refactor: simplified the code requesting par-rename after unpack;
  • for external script exec-permissions are now added automatically; this makes installation of pp-scripts and other scripts easier;
  • option "InterDir" is now active by default;
  • when option "InterDir" is used the intermediate destination directory names now include unique number to avoid several downloads with same name to use the same directory and interfere with each other;
  • when option "UnpackCleanupDisk" is active all archive files are now deleted from download directory without relying on output printed by unrar; this solves issues with non-ascii-characters in archive file names on some platforms and especially in combination with rar5;
  • improved handling of non-ascii characters in file names on windows;
  • added support for rar5-format when checking signatures of archives with non-standard file extensions;
  • small restructure in settings order: 1) combined sections "REMOTE CONTROL" and "PERMISSIONS" into one section with name "SECURITY"; 2) moved sections "CATEGORIES" and "RSS FEEDS" higher in the section list;
  • improved par-check: if main par2-file is corrupted and can not be loaded other par2-files are downloaded and then used as replacement for main par2-file;
  • if unpack did not find archive files the par-check is not requested anymore if par-rename was already done;
  • better handling of obfuscated nzb-files containing multiple files with same names; removed option "StrictParName" which was not working good with obfuscated files; if more par-files are required for repair the files with strict names are tried first and then other par-files;
  • added new scheduler commands "ActivateServer", "DeactivateServer" and "FetchFeed"; combined options "TaskX.DownloadRate" and "TaskX.Process" into one option "TaskX.Param", also used by new commands;
  • added status filter buttons to history page;
  • if unpack fails with write error (usually because of not enough space on disk) this is shown as status "Unpack: space" in web-interface; this unpack-status is handled as "success" by duplicate handling (no download of other duplicate); also added new unpack-status "wrong password" (only for rar5-archives); env.var. NZBPP_UNPACKSTATUS has two new possible values: 3 (write error) and 4 (wrong password); updated pp-script "EMail.py" to support new unpack-statuses;
  • fixed a potential seg. fault in a commonly used function;
  • added new option "TimeCorrection" to adjust conversion from system time to local local (solves issues with scheduler when using a binary compiled for other platform);
  • when deleting downloads from queue the messages about deleted individual files are now printed as "detail" instead of "info";
  • NZBIDs are now generated with more care avoiding numbering holes possible in previous versions;
  • fixed: invalid "Offset" passed to RPC-method "editqueue" or command line action "-E/--edit" could crash the program;
  • fixed: incorrect health calculation for downloads consisting of only par-files;
  • fixed: crash after downloading of an URL (happen only on certain systems);
  • fixed: restoring of settings didn't work for multi-sections (servers, categories, etc.) if they were empty;
  • fixed: choosing local files didn't work in Opera;
  • fixed: certain characters printed by pp-scripts could crash the program;
  • fixed: malformed nzb-file could cause a memory leak;
  • fixed: when a duplicate file was detected in collection it was automatically deleted (if option DupeCheck is active) but the total size of collection was not updated;
  • when deleting individual files the total count of files in collection was not updated;
  • fixed: when multiple nzb-files were added via URL (rss including) at the same time the info about category and priority could get lost for some of files;
  • fixed: final directory were not properly shown (Windows only);
  • fixed: if unpack fails the created destination directory was not automatically removed (only if option "InterDir" was active);
  • fixed scrolling to the top of page happening by clicking on items in downloads/history lists and on action-buttons in edit-download and history dialogs;
  • fixed potential buffer overflow in remote client;
  • improved error reporting when creation of temporary output file fails;
  • fixed: when deleting download, if all remaining queued files are par2-files the disk cleanup should not be performed, but it was sometimes;
  • fixed a potential problem in incorrect using of one library function.

New in NZBGet 12.0 Build 808 Dev (Sep 9, 2013)

  • created NZBGet.app - NZBGet is now a user friendly Mac OSX application with easy installation and seamless integration into OS UI: works in background, is controlled from a web-browser, few important functions are accessible via menubar icon;
  • added collecting of server usage statistical data for each download:
  • number of successful and failed article downloads per news server;
  • new page in history dialog shows collected statistics;
  • new fields in RPC-method "history": ServerStats (array), TotalArticles, SuccessArticles, FailedArticles;
  • new env. vars passed to pp-scripts: NZBPP_TOTALARTICLES, NZBPP_SUCCESSARTICLES, NZBPP_FAILEDARTICLES and per used news server: NZBPP_SERVERX_SUCCESSARTICLES, NZBPP_SERVERX_FAILEDARTICLES;
  • also new env.var HEALTHDELETED;
  • added new option "AuthorizedIP" to set the list of IP-addresses which may connect without authorization;
  • new option "ParRename" to force par-renaming as a first post-processing step (active by default); this saves an unpack attempt and is even more useful if unpack is disabled;
  • new env-var "NZBPP_FINALDIR" passed to pp-scripts;
  • pp-scripts can now set post-processing parameters by printing command "[NZB] NZBPR_varname=value"; this allows scripts which are executed sooner to pass data for scripts executed later;
  • updated support for DNZB-Headers: removed "X-DNZB-Link", added "X-DNZB-Details";
  • post-processing progress label is now automatically trimmed if it doesn't fill into one line; this avoids layout breaking if the text is too long;
  • fixed scrolling to the top of page happening by clicking on items in downloads/history lists and on action-buttons in edit-download and history dialogs;
  • fixed: health were not shown for items with status "PP-QUEUED";
  • fixed: the confirmation by leaving settings page could be sometimes shown even if there were no changes made;
  • fixed potential buffer overflow in remote client.

New in NZBGet 11.0 (Jul 2, 2013)

  • Reworked concept of post-processing scripts:
  • multiple scripts can be assigned to each nzb-file;
  • all assigned scripts are executed after the nzb-file is downloaded and internally processed (unpack, repair);
  • option is obsolete;
  • new option sets directory where all pp-scripts must be stored;
  • new option sets the default list of pp-scripts to be assigned to nzb-file when it's added to queue;
  • new option to set the default list of pp-scripts on a category basis;
  • the execution order of pp-scripts can be set using new option ;
  • there are no separate configuration files for pp-scripts;
  • configuration options and pp-parameters are defined in the pp-scripts;
  • script configuration options are saved in nzbget configuration file (nzbget.conf);
  • changed parameters list of RPC-methods and ;
  • new RPC-method returns configuration descriptions for the program and for all pp-scripts;
  • configuration of all scripts can be done in web-interface;
  • the pp-scripts assigned to a particular nzb-file can be viewed and changed in web-interface on page in the edit download dialog;
  • option renamed to (the old name is still recognized);
  • new option to define the location of template configuration file (in previous versions it must be always stored in );
  • history dialog shows status of every script;
  • for details see topic Introducing new post-processing scripts concept;
  • The old example post-processing script replaced with two new scripts:
  • EMail.py - sends E-Mail notification;
  • Logger.py - saves the full post-processing log of the job into file _postprocesslog.txt;
  • both pp-scripts are written in python and work on Windows too (in addition to Linux, Mac, etc.);
  • Added possibility to set post-processing parameters for history items:
  • pp-parameters can now be viewed and changed in history dialog in web-interface;
  • useful before post-processing again;
  • new action in RPC-method ;
  • new action in remote command for history items (subcommand );
  • Added new feature which creates new download from selected files of source download;
  • new command in web-interface in edit download dialog on page ;
  • new action in remote command ;
  • new action in JSON-/XML-RPC method ;
  • Added support for manual par-check:
  • if option is set to and a damaged download is detected the program downloads all par2-files but doesn't perform par-check; the user must perform par-check/repair manually then (possibly on another, faster computer);
  • old values of option renamed to and respectively;
  • when set to all par2-files are always downloaded;
  • removed option since its functionality is now covered by option ;
  • result of par-check can now have new value ;
  • field in RPC-method can have new value ;
  • parameter for pp-script can have new value ;
  • When download is resumed in web-interface the option is respected and all par2-files are resumed (not only main par2-file);
  • Automatic deletion of backup-source files after successful par-repair; important when repairing renamed rar-files since this could cause failure during unpack;
  • Par-checker and renamer now add messages into the log of pp-item (like unpack- and pp-scripts-messages); these message now appear in the log created by scripts Logger.py and EMail.py;
  • When a nzb-file is added via web-interface or via remote call the file is now put into incoming nzb-directory (option "NzbDir") and then scanned; this has two advantages over the old behavior when the file was parsed directly in memory:
  • the file serves as a backup for troubleshootings;
  • the file is processed by nzbprocess-script (if defined in option "NzbProcess") making the pre-processing much easier;
  • New env-var parameters are passed to NzbProcess-script: NZBNP_NZBNAME, NZBNP_CATEGORY, NZBNP_PRIORITY, NZBNP_TOP, NZBNP_PAUSED;
  • New commands for use in NzbProcess-scripts: "[NZB] TOP=1" to add nzb to the top of queue and "[NZB] PAUSED=1" to add nzb-file in paused state;
  • Reworked post-processor queue:
  • only one job is created for each nzb-file; no more separate jobs are created for par-collections within one nzb-file;
  • option removed; a post-processing script is called only once per nzb-file, this behavior cannot be altered anymore;
  • with a new feature individual par-collections can be processed separately in a more effective way than before
  • Improved unicode (utf8) support:
  • non-ascii characters are now correctly transferred via JSON-RPC;
  • correct displaying of nzb-names and paths in web-interface;
  • it is now possible to use non-ascii characters on settings page for option values (such as paths or category names);
  • improved unicode support in XML-RPC and JSON-RPC;
  • If username and password are defined for a news-server the authentication is now forced (in previous versions the authentication was performed only if requested by server); needed for servers supporting both anonymous (restricted) and authorized (full access) accounts;
  • Added option to automatically delete unwanted files (with specified extensions or names) after successful par-check or unpack;
  • Improvement in JSON-/XML-RPC:
  • all ID fields including NZBID are now persistent and remain their values after restart;
  • this allows for third-party software to identify nzb-files by ID;
  • method now returns ID of NZB-file in the field ;
  • in versions up to 0.8.0 the field was used to identify history items in the edit-commands , , ; since version 9 field is used for this purpose; in versions 9-10 field still existed and had the same value as field for compatibility with version 0.8.0; the compatibility is not provided anymore; this change was needed to provide a consistent using of field across all RPC-methods;
  • Added support for rar-files with non-standard extensions (such as .001, etc.);
  • Added functions to backup and restore settings from web-interface; when restoring it's possible to choose what sections to restore (for example only news servers settings or only settings of a certain pp-script) or restore the whole configuration;
  • New option "ControlUsername" to define login user name (if you don't like default username "nzbget");
  • If a communication error occurs in web-interface, it retries multiple times before giving up with an error message;
  • The maximum number of download threads are now managed automatically taking into account the number of allowed connections to news servers; removed option ;
  • Pp-scripts terminated with unknown status are now considered failed (status=FAILURE instead of status=UNKNOWN);
  • New parameter (env. var) is passed to pp_scripts and contains an internal ID of NZB-file;
  • Improved thread synchronisation to avoid (short-time) lockings of the program during creation of destination files;
  • More detailed error message if a directory could not be created (, , etc.); the message includes error text reported by OS such as or similar;
  • When unpacking the unpack start time is now measured after receiving of unrar copyright message; this provides better unpack time estimation in a case when user uses unpack-script to do some things before executing unrar (for example sending Wake-On-Lan message to the destination NAS); it works with unrar only, it's not possible with 7-Zip because it buffers printed messages;
  • When the program is reloaded, a message with version number is printed like on start;
  • Configuration can now be saved in web-interface even if there were no changes made but if obsolete or invalid options were detected in the config file; the saving removes invalid entries from config file;
  • Option can now be set to en empty value to disable authentication; useful if nzbget works behind other web-server with its own authentication;
  • When deleting downloads via web-interface a proper hint regarding deleting of already downloaded files from disk depending on option is displayed;
  • If a news-server returns empty or bad article (this may be caused by errors on the news server), the program tries again from the same or other servers (in previous versions the article was marked as failed without other download attempts);
  • When a nzb-file whose name ends with ".queued" is added via web-interface the ".queued"-part is automatically removed;
  • Small improvement in multithread synchronization of download queue;
  • Added link to catalog of pp-scripts to web-interface;
  • Updated forum URL in about dialog in web-interface;
  • Small correction in a log-message: removed from message ;
  • Removed option "ProcessLogKind"; scripts should use prefixes ([INFO], [DETAIL], etc); messages printed without prefixes are added as [INFO];
  • Removed option "AppendNzbDir"; if it was disabled that caused problems in par-checker and unpacker; the option is now assumed always active;
  • Removed option "RenameBroken"; it caused problems in par-checker (the option existed since early program versions before the par-check was added);
  • Configure-script now defines "SIGCHLD_HANDLER" by default on all systems including BSD; this eliminates the need of configure-parameter "--enable-sigchld-handler" on 64-Bit BSD; the trade-off: 32-Bit BSD now requires "--disable-sigchld-handler";
  • Improved configure-script: defining of symbol "FILE_OFFSET_BITS=64", required on some systems, is not necessary anymore;
  • Fixed: in the option "NzbAddedProcess" the env-var parameter with nzb-name was passed in "NZBNA_NAME", should be "NZBNA_NZBNAME"; the old parameter name "NZBNA_NAME" is still supported for compatibility;
  • Fixed: download time in statistics were incorrect if the computer was put into standby (thanks Frank Kuypers for the patch);
  • Fixed: when option was active and the download after unpack contained rar-file with the same name as one of original files (sometimes happen with included subtitles) the original rar-file was kept with name even if the option was active;
  • Fixed: failed to read download queue from disk if post-processing queue was not empty;
  • Fixed: when a duplicate file was detected during download the program could hang;
  • Fixed: symbol must be defined in project settings; defining it in didn't work properly (Windows only);
  • Fixed: crash when adding malformed nzb-files with certain structure (Windows only);
  • Fixed: by deleting of a partially downloaded nzb-file from queue, when the option was active, the file was not deleted preventing the directory from automatic deletion;
  • Fixed: if an error occurs when a RPC-client or web-browser communicates with nzbget the program could crash;
  • Fixed: if the last file of collection was detected as duplicate after the download of the first article the file was deleted from queue (that's OK) but the post-processing was not triggered (that's a bug);
  • Fixed: support for splitted files (.001, .002, etc.) were broken.

New in NZBGet 10.2 (May 24, 2013)

  • Fixed potential segfault which could happen with file paths longer than 1024 characters;
  • Fixed: when options and were both active, a restart or reload of the program during download may cause damaged files in the active download;
  • Increased width of speed indication ui-element to avoid layout breaking on some linux-browsers;
  • Fixed a race condition in unpacker which could lead to a segfault (although the chances were low because the code wasn't executed often).

New in NZBGet 10.1 (May 24, 2013)

  • Fixed: articles with decoding errors (incomplete or damaged posts) caused infinite retry-loop in downloader.