Andrey Prygunkov
adf3e05e1d
#351 : refactor: utility function "Sleep"
...
to replace direct calls to “usleep”, with parameter in milliseconds
instead of microseconds.
2019-01-22 22:23:40 +01:00
Andrey Prygunkov
e3bd94189a
#351 : refactor: moved changeable state into new Unit "WorkState.cpp"
...
from Unit “Options.cpp”. The latter now contains only program options
(which cannot be changed without reload).
2019-01-22 21:57:00 +01:00
Andrey Prygunkov
b83a9b9aff
#533 : detecting malformed articles and printing a warning
2018-05-06 22:46:25 +02:00
Andrey Prygunkov
5b3372107d
#461 : removed option "AccurateRate"
2017-10-29 12:43:06 +01:00
Andrey Prygunkov
07c54740a7
#461 : removed option "TerminateTimeout"
...
No thread killing anymore. Hanging downloads are gracefully cancelled
after timeout set in “ArticleTimeout” or “UrlTimeout”.
2017-10-29 12:34:16 +01:00
Andrey Prygunkov
50c1ca588c
#454 : option "RawArticle" works again
2017-10-20 20:52:42 +02:00
Andrey Prygunkov
b9b1c76ada
#454 : using raw-decoder from node-yencode library
2017-10-08 21:08:23 +02:00
Andrey Prygunkov
54eb8e1291
#448 : new option "SkipWrite"
...
replaces compiler define “SKIP_ARTICLE_WRITING”. 2) renamed option
“Decode” to “RawArticle”. 3) option “CrcCheck” moved from section
“Download Queue “ into section “Check and Repair”
2017-09-28 17:31:47 +02:00
Andrey Prygunkov
262df77f74
#449 : new option "RateBuffer"
...
to configure speed meter update rate
2017-09-22 23:45:26 +02:00
Andrey Prygunkov
481e7b3d2b
refactor: removed updates from article writer
2017-09-13 19:19:01 +02:00
Andrey Prygunkov
f7be22893d
#362 : computing 16k-hashes for downloaded files
2017-04-17 15:32:32 +02:00
Andrey Prygunkov
bf2fea64e7
#360 : removed unnecessary requests to news servers
2017-04-14 14:39:37 +02:00
Andrey Prygunkov
02b33fb559
#306 : splitted options "Retries" and "RetryInterval"
...
into four options: ArticleRetries, ArticleInterval, UrlRetries, and
UrlInterval.
2016-11-13 13:05:37 +01:00
Andrey Prygunkov
dd4df8b734
#99 : separate quota reached flag
...
- using separate “quota reached”-flag instead of changing global pause
state;
- new field “QuotaReached” in RPC-method “Status”.
2016-04-15 20:47:04 +02:00
Andrey Prygunkov
298178b2dc
#155 : added handling of optional news servers
2016-03-30 22:10:57 +02:00
Andrey Prygunkov
f973388879
#185 : use guards with private mutexes
...
Use guard objects to automatically unlock private mutexes when leaving
current scope.
2016-03-16 22:37:19 +01:00
Andrey Prygunkov
a5ac6d594f
#148 : unique smart pointers for other containers
...
: feeds, servers, scheduler.
2016-03-13 00:08:16 +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
8f84132218
#156 : new class "CharBuffer" for temporary buffers
...
Replaced everywhere plain “char”-buffers with new class. Avoid using
“malloc/free”.
2016-01-17 00:06:27 +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
69c995359b
#126 : time formatting functions
2016-01-01 15:56:53 +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
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
558fce9b47
#126 : replaced C-style strings with class "CString"
...
: replaced all data members.
2015-12-12 16:36:25 +01:00
Andrey Prygunkov
4e4816c3c8
#116 : use size specific integer types
2015-11-21 00:02:22 +01:00
Andrey Prygunkov
ec17d119a1
#115 : put all external headers together
...
into “nzbget.h”
2015-11-19 23:51:02 +01:00
Andrey Prygunkov
8630f1365c
merged #100 : fixed: downloads may sometimes fail due to incorrect decoding of articles
2015-11-16 22:56:44 +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
1fb21b330e
#103 : normalized (renamed) acronyms
2015-10-30 23:54:37 +01:00
Andrey Prygunkov
af85bb91fa
#103 : few manual renames
2015-10-30 22:08:21 +01:00
Andrey Prygunkov
5adb50274e
#103 : renamed local, member variables and function parameters
2015-10-27 22:37:23 +01:00
Andrey Prygunkov
50d344cb91
fixed #100 : workaround to deal with malformed responses
...
…which still may contain useful data.
2015-10-20 21:09:01 +02:00
Andrey Prygunkov
5d24697b0c
refactor: reworked declaration of global objects (singletones)
2015-05-22 20:28:05 +00:00
Andrey Prygunkov
aefd87e3e5
addition to r1182: do not block news servers when a download is cancelled/deleted
2015-04-03 11:34:33 +00:00
Andrey Prygunkov
6c7a1b5697
improved the quality of speed throttling when a speed limit is active
2015-03-21 16:12:01 +00:00
Andrey Prygunkov
4402d6fbd6
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
2014-12-21 18:21:49 +00:00
Andrey Prygunkov
185d52a9d4
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
2014-12-11 20:45:08 +00:00
Andrey Prygunkov
029c808458
added news server name to message "Cancelling hanging download ..." to help identifying problematic servers
2014-10-10 21:13:02 +00:00
Andrey Prygunkov
5ec38498f1
quick par verification now works even if articles do not contain CRCs (although it is a rare case)
2014-09-27 22:18:49 +00:00
Andrey Prygunkov
d0754e022f
addition to r1121: now fixed on windows too: inner files (files listed in nzb) bigger than 2GB could not be downloaded
2014-09-08 19:35:11 +00:00
Andrey Prygunkov
ed7245c852
fixed: inner files (files listed in nzb) bigger than 2GB could not be downloaded
2014-09-07 10:00:52 +00:00
Andrey Prygunkov
93bc9a4293
fixed: malformed articles could crash the program (bug introduced in v14)
2014-08-11 18:02:15 +00:00
Andrey Prygunkov
a62966227a
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 http://nzbget.net/libpar2 for details)
2014-07-27 21:59:00 +00:00
Andrey Prygunkov
5941464402
addition to r1057 (added article cache): fixed a segfault which could happen if none of articles could be downloaded for a file
2014-07-19 00:17:39 +00:00
Andrey Prygunkov
3074ea62dc
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"
2014-07-19 00:06:28 +00:00