Andrey Prygunkov
804f8ab085
#288 : integrated rar-renamer into post-processing
...
also implemented initial simple renaming for rar-files
2016-09-26 21:55:41 +02:00
Andrey Prygunkov
3593990dd6
#288 : new module "Rename" to handle par-rename and rar-rename
2016-09-26 21:16:27 +02:00
Andrey Prygunkov
5e0e91f671
#249 : do not cleanup if unpack disabled
...
If parameter "unpack" is disabled for an nzb-file the cleanup isn't
performed for it.
2016-09-19 23:40:00 +02:00
Andrey Prygunkov
a1e945661b
#205 : improved handling of queue cleanup
...
Also removed option “ParCleanupQueue” as it is not needed anymore with
reworked state handling.
2016-05-15 19:42:54 +02:00
Andrey Prygunkov
864fb92bc7
#205 : new option "HistoryCleanupDisk"
...
… extracted from “DeleteCleanupDisk”.
2016-05-12 23:34:08 +02:00
Andrey Prygunkov
43f25587d2
#205 : improved file state handling
...
Better handling of all cases: manual delete, health delete, retry
failed, download remaining with ContinuePartial=on/off and
DirectWrite=on/off.
2016-05-12 23:22:06 +02:00
Andrey Prygunkov
f08d3918dc
#205 : retry for deleted downloads too
...
Commands “Retry failed articles” and “Download remaining files“ now
work for deleted downloads too (including deleted by health check).
2016-05-09 19:17:17 +02:00
Gunnar Lilleaasen
181a395515
Updated names of guarded pointers used directly in foreach loops.
2016-03-24 13:01:15 +01:00
Gunnar Lilleaasen
4f7849fbc1
Fixed guard usage in foreach loops, where the guards would unlock before the iteration was done.
2016-03-24 02:44:12 +01:00
Andrey Prygunkov
5948729b87
#185 : guarded containers
...
Using guarded lists to automatically unlock containers.
2016-03-18 21:45:29 +01:00
Andrey Prygunkov
1a74695126
#148 : unique smart pointers for download containers
2016-03-11 22:49:14 +01:00
Andrey Prygunkov
f3f7fbd0de
#176 : updated copyright notice in source files
...
- added link to http://nzbget.net ;
- replaced FSF Post address with a web link;
- removed unusable subversion-tags;
- updated year.
2016-03-01 19:45:07 +01:00
Andrey Prygunkov
bfa5027bf9
#175 : in-class member initializers
2016-02-28 19:53:37 +01:00
Andrey Prygunkov
ff69fbbeb9
#136 : avoid double slashes in paths
...
Extra long path names are not normalized automatically by Windows and
therefore must contain paths in canonical form.
2016-01-23 14:23:53 +01:00
Andrey Prygunkov
ef4a72d383
#152 : eliminated dereferences in for-range loops using “begin()” and “end()” template functions in “nzbget.h”
2016-01-13 19:44:40 +01:00
Andrey Prygunkov
b32b4c0691
#152 : for-range loops with iterators
2016-01-12 00:30:17 +01:00
Andrey Prygunkov
32400a810f
#143 : store download objects directly in containers
...
…where possible.
2016-01-08 22:29:44 +01:00
Andrey Prygunkov
3e89638b39
refactor: replaced "time(NULL)" with an utility function
2016-01-01 14:57:48 +01:00
Andrey Prygunkov
04c3e0d263
#138 : use "nullptr" instead of "NULL"
2015-12-30 16:35:07 +01:00
Andrey Prygunkov
6840ef4439
#131 : routing a few more remaining function calls through module "FileSystem"
...
“rename”, “remove” and “rmdir”.
2015-12-25 22:55:46 +01:00
Andrey Prygunkov
eae6fd5d91
#131 : wrapped function "remove" into module FileSystem
...
under name “DeleteFile”.
2015-12-24 18:34:15 +01:00
Andrey Prygunkov
321c7efa41
#130 : moved parts from module "Util" into new module "FileSystem"
2015-12-22 22:01:03 +01:00
Andrey Prygunkov
9e2d8544da
#126 : full use of class BString
...
1) replaced characters arrays with class BString through the whole
program. The string formatting code has become much cleaner.
2) class Util returns error message via CString instead of character
buffers.
3) few more places to use CString.
2015-12-19 18:43:52 +01:00
Andrey Prygunkov
6d33d83d20
#126 : using GCC attributes to detect formatting errors
...
also eliminated warnings found with activated detection.
2015-12-13 18:28:48 +01:00
Andrey Prygunkov
ec17d119a1
#115 : put all external headers together
...
into “nzbget.h”
2015-11-19 23:51:02 +01:00
Andrey Prygunkov
70ccfd9802
normalized whitespace formatting
...
1) removed trailing spaces and tabs;
2) replaced occasional leading spaces with tabs.
2015-11-05 23:45:19 +01:00
Andrey Prygunkov
bf49f16d7c
#103 : renamed global variables
2015-11-01 21:42:35 +01:00
Andrey Prygunkov
c46e6953e1
#103 : updated references for renamed modules
2015-10-31 19:57:41 +01:00
Andrey Prygunkov
1fb21b330e
#103 : normalized (renamed) acronyms
2015-10-30 23:54:37 +01:00
Andrey Prygunkov
5adb50274e
#103 : renamed local, member variables and function parameters
2015-10-27 22:37:23 +01:00
Andrey Prygunkov
24fd4e8c15
#26 , #60 , #64 , #70 : corrected file permissions
2015-08-11 22:31:59 +02:00
Andrey Prygunkov
1e64a7d453
#60 : new download status to indicate queue script activity
...
- new values for field “Status” in method “listgroups”: QS_QUEUED,
QS_EXECUTING;
- QS_QUEUED means that nzb is queued for processing by a queue-script;
- QS_EXECUTING means for that nzb a queue script is currently running;
- indication in web UI: status “QS-QUEUED” (gray) or “QUEUE-SCRIPT”
(green).
2015-08-11 22:27:41 +02:00
Andrey Prygunkov
8a2fef7c46
Merge branch 'develop' into 64-dupe-repair
2015-08-03 23:35:04 +02:00
Andrey Prygunkov
6c3f2a9871
#21 : refactor: new modules Service and DiskService
...
Extracted secondary functions from module PrePostProcessor into new
modules Service and DiskService.
2015-08-03 23:27:02 +02:00
Andrey Prygunkov
3ac2ccbc80
#64 : do not skip par-check in dupe scan mode
...
Do not skip par-check when health is below critical health and
ParScan=dupe. The download may be still repairable if the data from
other duplicates can be used.
2015-08-03 00:50:11 +02:00
Andrey Prygunkov
6ac82f03d8
#64 : refactor: extracted classes from module "Unpack" into new module "Cleanup"
2015-08-01 00:20:31 +02:00
Andrey Prygunkov
4cc2beaaca
#26 : new queue-script event "NZB_DELETED"
...
- when an nzb is deleted from queue and moved to history the
queue-scripts are called with event “NZB_DELETED”.
- no scripts are called if items are deleted permanently without
putting to history or if the history is completely disabled. This is
because queue-scripts are executed asynchronously and at the time the
script is executed the item must exist (either in queue or in history)
in order to pass item info to the script.
2015-07-24 19:45:44 +02:00
Andrey Prygunkov
d49ab2a087
#26 : removed unneeded extra check
2015-07-24 19:34:51 +02:00
Andrey Prygunkov
c208eec5c3
#26 : removed code "SUCCESS" from DeleteStatus
...
A more general code “GOOD” is used instead.
2015-07-24 19:29:41 +02:00
Andrey Prygunkov
659ed48652
#26 : ignored nzbs are now added to history
...
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):
- for malformed nzb-files which cannot be parsed the status in history
“DELETE: SCAN”;
- for duplicate files with exactly same content status “DELETE: COPY”;
- for duplicate files having history items with status “GOOD” - status
“DELETE: GOOD”;
- for duplicate files having history items with status “SUCCESS” -
status “DELETE: SUCCESS”;
- history items have log-entries with explanation;
- new values for field “DeleteStatus” of RPC-Method “history”: GOOD,
SUCCESS, COPY, SCAN;
- new values for field “Status” of RPC-Method “history”:
"FAILURE/SCAN”, ”DELETED/COPY”, "DELETED/GOOD”, "DELETED/SUCCESS”;
- one exception: for files added from RSS-feeds no history items are
created, the files are ignored as if they were filtered.
2015-07-23 23:47:59 +02:00
Andrey Prygunkov
a9a73b635c
#21 : new option "RequiredDir"
2015-07-23 23:07:47 +02:00
Andrey Prygunkov
5d24697b0c
refactor: reworked declaration of global objects (singletones)
2015-05-22 20:28:05 +00:00
Andrey Prygunkov
a641bd8bd1
refactor: reducing module dependencies for easier testing: extracted par file name parsing code from module "ParCoordinator" into new module "ParParser", which can be instantiated separately
2015-05-21 14:33:16 +00:00
Andrey Prygunkov
53371344ae
improved cleanup: 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
2015-03-04 20:12:07 +00:00
Andrey Prygunkov
7e6f8f19eb
each nzb now has its own individual log, where 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 "loadlag" 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"
2015-02-26 20:57:38 +00:00
Andrey Prygunkov
9269f69a38
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)
2014-10-09 21:11:42 +00:00
Andrey Prygunkov
21f5de8de8
improved cleanup: disk cleanup is now not performed if unrar failed even if par-check was successful; 2) 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
2014-09-25 22:08:57 +00:00
Andrey Prygunkov
2cb9d81a3c
fixed: the program could crash during deleting of active download (bug introduced in r1108)
2014-08-30 15:10:49 +00:00
Andrey Prygunkov
44e949eafe
fixed: crash and possible queue corruption when option "ParCleanuQueue" was active (which is a default setting) (bug introduced in r1108)
2014-08-29 15:05:27 +00:00
Andrey Prygunkov
0f98c72f1e
fixed: cancelling of post-processing could delete the nzb-item completely (bug introduced in v14)
2014-08-28 19:15:42 +00:00