mirror of
https://github.com/nzbget/nzbget.git
synced 2026-01-10 06:57:44 -05:00
Compare commits
10 Commits
v21.0-r229
...
v21.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bbfcf07689 | ||
|
|
fd35e05b61 | ||
|
|
3e0be12cb3 | ||
|
|
d6e8f67927 | ||
|
|
a159a1ff5a | ||
|
|
15f4955f38 | ||
|
|
aac98b53ee | ||
|
|
fa4a5bb261 | ||
|
|
d19c9b80e7 | ||
|
|
c7716ae9b7 |
61
ChangeLog
61
ChangeLog
@@ -1,6 +1,63 @@
|
||||
nzbget-21.0:
|
||||
- please see repository change log at
|
||||
https://github.com/nzbget/nzbget/commits/develop
|
||||
- reworked duplicate handling to support URLs, especially when using RSS
|
||||
feeds:
|
||||
- queue items added via URLs (to be fetched by nzbget) are no longer
|
||||
immediately fetched;
|
||||
- instead url-items are handled by duplicate check similar to nzb-items
|
||||
and may be placed into history as duplicate backups;
|
||||
- if an url-item needs to be downloaded as backup for a failed other item
|
||||
the nzb-file is fetched via provided URL;
|
||||
- this greatly reduces the number of nzbs fetched from indexers when using
|
||||
RSS feeds and duplicate handling;
|
||||
- improved support for Android devices:
|
||||
- now providing a separate installer package for Android;
|
||||
- the package contains binaries built using Android NDK;
|
||||
- this improves compatibility with Android, in particular with Android 8,
|
||||
where general Linux installer version of NZBGet didn't work anymore due
|
||||
to security changes in Android;
|
||||
- android installer app is updated to use the new android installer package
|
||||
instead of general Linux package;
|
||||
- thoroughly optimised the program to reduce power consumption in idle state:
|
||||
- number of CPU wake ups in idle state has been reduced from hundreds times
|
||||
per second to about only one per second;
|
||||
- optimisations for large queues with thousands of items:
|
||||
- speed up saving of queue state and reduced number of queue state savings;
|
||||
- improved queue state format to reduce amount of state data saved during
|
||||
downloading;
|
||||
- in tests download speed for very large queue (16000 items) has been
|
||||
increased from 45 MB/s to 300 MB/s (comparing to 400 MB/s with small
|
||||
queue);
|
||||
- added native support for aarch64 architecture (ARM 64 Bit CPU) in Linux and
|
||||
Android installers;
|
||||
- force par-check for nzbs without archives;
|
||||
- added functional tests for unpack CRC error;
|
||||
- click on nzbget logo in web-interface now switches to downloads tab instead
|
||||
of showing "About dialog" which has been moved into settings;
|
||||
- improved handling of files splitted via par2;
|
||||
- added python 3 compatibility to EMail.py script;
|
||||
- added python 3 compatibility to Logger.py script;
|
||||
- proper UTF-8 encoding of email content in EMail.py script;
|
||||
- improved error reporting for queue disk state corruption;
|
||||
- updated unrar to 5.7 and 7-zip to 19.0;
|
||||
- Windows installer now includes unrar in 32 bit and 64 bit variants;
|
||||
- allowing wildcards in option AuthorizedIP;
|
||||
- removed suggestion of RC4 cipher;
|
||||
- better description of option UMask;
|
||||
- integrated LGTM code analyser tool into project;
|
||||
- fixed: failed downloads not having any par2- or archive- files were moved to
|
||||
DestDir instead of remaining in InterDir;
|
||||
- fixed crash when using FIPS version of OpenSSL;
|
||||
- fixed compatibility issue with OpenSSL compiled without compression support;
|
||||
- fixed deprecated OpenSSL calls;
|
||||
- fixed potential crash in built-in web-server;
|
||||
- fixed: statistics for session download time and speed may be way off on high
|
||||
load;
|
||||
- fixed many compilation warnings in GCC;
|
||||
- fixed: macOS menubar widget could not connect if password contained special
|
||||
characters;
|
||||
- fixed: remote clients not displaying current download speed;
|
||||
- fixed: remote server could crash when feed with invalid api request;
|
||||
- fixed trimming of relative paths in config.
|
||||
|
||||
nzbget-20.0:
|
||||
- massive performance optimisations in downloader:
|
||||
|
||||
20
configure
vendored
20
configure
vendored
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.69 for nzbget 21.0-testing.
|
||||
# Generated by GNU Autoconf 2.69 for nzbget 21.0.
|
||||
#
|
||||
# Report bugs to <hugbug@users.sourceforge.net>.
|
||||
#
|
||||
@@ -580,8 +580,8 @@ MAKEFLAGS=
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='nzbget'
|
||||
PACKAGE_TARNAME='nzbget'
|
||||
PACKAGE_VERSION='21.0-testing'
|
||||
PACKAGE_STRING='nzbget 21.0-testing'
|
||||
PACKAGE_VERSION='21.0'
|
||||
PACKAGE_STRING='nzbget 21.0'
|
||||
PACKAGE_BUGREPORT='hugbug@users.sourceforge.net'
|
||||
PACKAGE_URL=''
|
||||
|
||||
@@ -1348,7 +1348,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures nzbget 21.0-testing to adapt to many kinds of systems.
|
||||
\`configure' configures nzbget 21.0 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@@ -1419,7 +1419,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of nzbget 21.0-testing:";;
|
||||
short | recursive ) echo "Configuration of nzbget 21.0:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@@ -1584,7 +1584,7 @@ fi
|
||||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
nzbget configure 21.0-testing
|
||||
nzbget configure 21.0
|
||||
generated by GNU Autoconf 2.69
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
@@ -2053,7 +2053,7 @@ cat >config.log <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by nzbget $as_me 21.0-testing, which was
|
||||
It was created by nzbget $as_me 21.0, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@@ -3026,7 +3026,7 @@ fi
|
||||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='nzbget'
|
||||
VERSION='21.0-testing'
|
||||
VERSION='21.0'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@@ -9177,7 +9177,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by nzbget $as_me 21.0-testing, which was
|
||||
This file was extended by nzbget $as_me 21.0, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@@ -9243,7 +9243,7 @@ _ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||
ac_cs_version="\\
|
||||
nzbget config.status 21.0-testing
|
||||
nzbget config.status 21.0
|
||||
configured by $0, generated by GNU Autoconf 2.69,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# This file is part of nzbget. See <http://nzbget.net>.
|
||||
#
|
||||
# Copyright (C) 2008-2018 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
# Copyright (C) 2008-2019 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -21,7 +21,7 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ(2.65)
|
||||
AC_INIT(nzbget, 21.0-testing, hugbug@users.sourceforge.net)
|
||||
AC_INIT(nzbget, 21.0, hugbug@users.sourceforge.net)
|
||||
AC_CONFIG_AUX_DIR(posix)
|
||||
AC_CANONICAL_TARGET
|
||||
AM_INIT_AUTOMAKE([foreign subdir-objects])
|
||||
|
||||
@@ -642,8 +642,6 @@ void Options::CheckDir(CString& dir, const char* optionName,
|
||||
|
||||
FileSystem::NormalizePathSeparators((char*)usedir2);
|
||||
dir = usedir2;
|
||||
|
||||
usedir2[usedir2.Length() - 1] = '\0';
|
||||
SetOption(optionName, usedir2);
|
||||
}
|
||||
|
||||
|
||||
@@ -675,7 +675,7 @@ void ListBinCommand::Execute()
|
||||
Util::SplitInt64(remainingSize, &sizeHi, &sizeLo);
|
||||
ListResponse.m_remainingSizeHi = htonl(sizeHi);
|
||||
ListResponse.m_remainingSizeLo = htonl(sizeLo);
|
||||
ListResponse.m_downloadRate = htonl(g_WorkState->GetSpeedLimit());
|
||||
ListResponse.m_downloadLimit = htonl(g_WorkState->GetSpeedLimit());
|
||||
ListResponse.m_downloadPaused = htonl(g_WorkState->GetPauseDownload());
|
||||
ListResponse.m_postPaused = htonl(g_WorkState->GetPausePostProcess());
|
||||
ListResponse.m_scanPaused = htonl(g_WorkState->GetPauseScan());
|
||||
|
||||
@@ -541,9 +541,9 @@ bool RemoteClient::RequestServerList(bool files, bool groups, const char* patter
|
||||
int averageSpeed = (int)(ntohl(ListResponse.m_downloadTimeSec) > 0 ? allBytes / ntohl(ListResponse.m_downloadTimeSec) : 0);
|
||||
printf("Session download rate: %s\n", *Util::FormatSpeed(averageSpeed));
|
||||
|
||||
if (ntohl(ListResponse.m_downloadRate) > 0)
|
||||
if (ntohl(ListResponse.m_downloadLimit) > 0)
|
||||
{
|
||||
printf("Speed limit: %s\n", *Util::FormatSpeed(ntohl(ListResponse.m_downloadRate)));
|
||||
printf("Speed limit: %s\n", *Util::FormatSpeed(ntohl(ListResponse.m_downloadLimit)));
|
||||
}
|
||||
|
||||
int sec = ntohl(ListResponse.m_upTimeSec);
|
||||
|
||||
@@ -301,9 +301,10 @@ bool WebProcessor::IsAuthorizedIp(const char* remoteAddr)
|
||||
// split option AuthorizedIP into tokens and check each token
|
||||
bool authorized = false;
|
||||
Tokenizer tok(g_Options->GetAuthorizedIp(), ",;");
|
||||
while (const char* iP = tok.Next())
|
||||
while (const char* ip = tok.Next())
|
||||
{
|
||||
if (!strcmp(iP, remoteIp))
|
||||
WildMask mask(ip);
|
||||
if (mask.Match(remoteIp))
|
||||
{
|
||||
authorized = true;
|
||||
break;
|
||||
|
||||
@@ -561,9 +561,7 @@ void XmlRpcProcessor::BuildResponse(const char* response, const char* callbackFu
|
||||
void XmlRpcProcessor::BuildErrorResponse(int errCode, const char* errText)
|
||||
{
|
||||
ErrorXmlCommand command(errCode, errText);
|
||||
command.SetRequest(m_request);
|
||||
command.SetProtocol(m_protocol);
|
||||
command.PrepareParams();
|
||||
command.Execute();
|
||||
BuildResponse(command.GetResponse(), "", command.GetFault(), nullptr);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# This file is part of nzbget
|
||||
#
|
||||
# Copyright (C) 2015-2018 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
# Copyright (C) 2015-2019 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -25,7 +25,7 @@ set -o errexit
|
||||
# Uncomment next line for debuging
|
||||
#set -x
|
||||
|
||||
ALLTARGETS="dist i686 x86_64 armel armhf mipsel mipseb ppc6xx ppc500 x86_64-bsd i686-ndk armhf-ndk"
|
||||
ALLTARGETS="dist i686 x86_64 armel armhf aarch64 mipsel mipseb ppc6xx ppc500 x86_64-bsd i686-ndk armhf-ndk aarch64-ndk"
|
||||
ROOT=`pwd`
|
||||
ROOTPATH=$PATH
|
||||
OUTPUTDIR=$ROOT/output
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# This file is part of nzbget. See <http://nzbget.net>.
|
||||
#
|
||||
# Copyright (C) 2015-2018 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
# Copyright (C) 2015-2019 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -25,7 +25,7 @@ set -o errexit
|
||||
# Uncomment next line for debuging
|
||||
#set -x
|
||||
|
||||
ALLTARGETS="i686 x86_64 armel armhf mipsel mipseb ppc6xx ppc500 x86_64-bsd i686-ndk x86_64-ndk armhf-ndk aarch64-ndk"
|
||||
ALLTARGETS="i686 x86_64 armel armhf aarch64 mipsel mipseb ppc6xx ppc500 x86_64-bsd i686-ndk x86_64-ndk armhf-ndk aarch64-ndk"
|
||||
ROOT=`pwd`
|
||||
OUTPUTDIR=$ROOT/setup
|
||||
BUILDDIR=temp
|
||||
|
||||
@@ -92,6 +92,7 @@ PrintHelp()
|
||||
PrintArch "x86_64" " x86_64 - x86, 64 Bit"
|
||||
PrintArch "armel" " armel - ARMv5/v6 (ARM9 and ARM11 families)"
|
||||
PrintArch "armhf" " armhf - ARMv7/v8 (Cortex family)"
|
||||
PrintArch "aarch64" " aarch64 - ARMv8, 64 Bit"
|
||||
PrintArch "mipsel" " mipsel - MIPS (little endian)"
|
||||
PrintArch "mipseb" " mipseb - MIPS (big endian)"
|
||||
PrintArch "ppc6xx" " ppc6xx - PowerPC 6xx (603e series)"
|
||||
@@ -188,9 +189,12 @@ DetectArch()
|
||||
armv5*|armv6*|armel)
|
||||
ARCH=armel
|
||||
;;
|
||||
armv7*|armv8*|aarch64)
|
||||
armv7*|armv8*)
|
||||
ARCH=armhf
|
||||
;;
|
||||
aarch64)
|
||||
ARCH=aarch64
|
||||
;;
|
||||
ppc)
|
||||
ARCH=ppcx
|
||||
;;
|
||||
|
||||
29
nzbget.conf
29
nzbget.conf
@@ -225,13 +225,6 @@ Server1.Encryption=no
|
||||
#
|
||||
# See http://nzbget.net/choosing-cipher for details.
|
||||
#
|
||||
# NOTE: One of the fastest cipher is RC4. To select it use the cipher string
|
||||
# "RC4-MD5" (if NZBGet was configured to use OpenSSL) or
|
||||
# "NONE:+VERS-TLS-ALL:+ARCFOUR-128:+RSA:+MD5:+COMP-ALL"
|
||||
# (if NZBGet was configured to use GnuTLS). Note that RC4 is considered insecure
|
||||
# by the IETF (http://tools.ietf.org/html/rfc7465), but may be sufficient for
|
||||
# the usage of NZBGet.
|
||||
#
|
||||
# NOTE: You may get a TLS handshake error if the news server does
|
||||
# not support the chosen cipher. You can also get an error "Could not
|
||||
# select cipher for TLS" if the cipher string is not valid.
|
||||
@@ -404,11 +397,13 @@ SecureKey=
|
||||
|
||||
# IP-addresses allowed to connect without authorization.
|
||||
#
|
||||
# Comma separated list of privileged IPs for easy access to NZBGet
|
||||
# built-in web-server (web-interface and RPC). The connected clients
|
||||
# have full unrestricted access.
|
||||
# List of privileged IPs for easy access to NZBGet built-in web-server
|
||||
# (web-interface and RPC). The connected clients have full unrestricted access.
|
||||
#
|
||||
# Example: 127.0.0.1,192.168.178.2.
|
||||
# Separate entries with commas or semicolons. Use wildcard characters
|
||||
# * and ? for pattern matching.
|
||||
#
|
||||
# Example: 127.0.0.1, 192.168.178.*
|
||||
#
|
||||
# NOTE: Do not use this option if the program works behind another
|
||||
# web-server because all requests will have the address of this server.
|
||||
@@ -454,12 +449,18 @@ UpdateCheck=stable
|
||||
# current user id.
|
||||
DaemonUsername=root
|
||||
|
||||
# Specify default umask (affects file permissions) for newly created
|
||||
# files, POSIX only (000-1000).
|
||||
# Specify default umask, POSIX only (000-1000).
|
||||
#
|
||||
# UMask determines the settings of a mask that controls how file permissions
|
||||
# are set for newly created files and directories. Please note that UMask
|
||||
# doesn't set file permissions directly, it merely filters out certain
|
||||
# permissions. It also has very different effect from command "chmod", which
|
||||
# you shouldn't confuse UMask with. Please read
|
||||
# http://en.wikipedia.org/wiki/Umask for details.
|
||||
#
|
||||
# The value should be written in octal form (the same as for "umask" shell
|
||||
# command).
|
||||
# Empty value or value "1000" disable the setting of umask-mode; current
|
||||
# Empty value or value "1000" disables the setting of umask-mode; current
|
||||
# umask-mode (set via shell) is used in this case.
|
||||
UMask=1000
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\daemon\connect;.\daemon\extension;.\daemon\feed;.\daemon\frontend;.\daemon\main;.\daemon\nserv;.\daemon\nntp;.\daemon\postprocess;.\daemon\queue;.\daemon\remote;.\daemon\util;.\daemon\windows;.\lib\par2;.\lib\yencode;.\windows\resources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0-testing";_DEBUG;_CONSOLE;DEBUG;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0";_DEBUG;_CONSOLE;DEBUG;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
@@ -101,7 +101,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.\daemon\connect;.\daemon\extension;.\daemon\feed;.\daemon\frontend;.\daemon\main;.\daemon\nserv;.\daemon\nntp;.\daemon\postprocess;.\daemon\queue;.\daemon\remote;.\daemon\util;.\daemon\windows;.\lib\par2;.\lib\yencode;.\windows\resources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0-testing";_DEBUG;_CONSOLE;DEBUG;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0";_DEBUG;_CONSOLE;DEBUG;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
@@ -120,7 +120,7 @@
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.\daemon\connect;.\daemon\extension;.\daemon\feed;.\daemon\frontend;.\daemon\main;.\daemon\nserv;.\daemon\nntp;.\daemon\postprocess;.\daemon\queue;.\daemon\remote;.\daemon\util;.\daemon\windows;.\lib\par2;.\lib\yencode;.\windows\resources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0-testing";NDEBUG;_CONSOLE;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0";NDEBUG;_CONSOLE;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
@@ -151,7 +151,7 @@
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.\daemon\connect;.\daemon\extension;.\daemon\feed;.\daemon\frontend;.\daemon\main;.\daemon\nserv;.\daemon\nntp;.\daemon\postprocess;.\daemon\queue;.\daemon\remote;.\daemon\util;.\daemon\windows;.\lib\par2;.\lib\yencode;.\windows\resources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0-testing";NDEBUG;_CONSOLE;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>WIN32;PACKAGE="nzbget";VERSION="21.0";NDEBUG;_CONSOLE;_WIN32_WINNT=0x0403;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<key>LSUIElement</key>
|
||||
<true/>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright © 2007-2018 Andrey Prygunkov</string>
|
||||
<string>Copyright © 2007-2019 Andrey Prygunkov</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>MainApp</string>
|
||||
<key>NSAppTransportSecurity</key>
|
||||
|
||||
@@ -829,7 +829,6 @@ var Config = (new function($)
|
||||
else if (option.caption.toLowerCase().indexOf('password') > -1 &&
|
||||
option.name.toLowerCase() !== '*unpack:password')
|
||||
{
|
||||
console.log(option.caption);
|
||||
option.type = 'password';
|
||||
html += '<div class="password-field input-append">' +
|
||||
'<input type="password" id="' + option.formId + '" value="' + Util.textToAttr(value) + '" class="editsmall">'+
|
||||
@@ -879,6 +878,11 @@ var Config = (new function($)
|
||||
|
||||
htmldescr = htmldescr.replace(/&/g, '&');
|
||||
|
||||
// add extra new line after Examples not ended with dot
|
||||
htmldescr = htmldescr.replace(/Example:.*/g, function (match) {
|
||||
return match + (Util.endsWith(match, '.') ? '' : '\n');
|
||||
});
|
||||
|
||||
// replace URLs
|
||||
exp = /(http:\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
|
||||
htmldescr = htmldescr.replace(exp, "<a href='$1'>$1</a>");
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
rem
|
||||
rem This file is part of nzbget
|
||||
rem
|
||||
rem Copyright (C) 2013-2017 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
rem Copyright (C) 2013-2019 Andrey Prygunkov <hugbug@users.sourceforge.net>
|
||||
rem
|
||||
rem This program is free software; you can redistribute it and/or modify
|
||||
rem it under the terms of the GNU General Public License as published by
|
||||
@@ -241,6 +241,8 @@ xcopy /E scripts ..\distrib\NZBGet\scripts
|
||||
if errorlevel 1 goto BUILD_FAILED
|
||||
|
||||
copy ..\..\image\* ..\distrib\NZBGet
|
||||
copy ..\..\image\32\* ..\distrib\NZBGet\32
|
||||
copy ..\..\image\64\* ..\distrib\NZBGet\64
|
||||
if errorlevel 1 goto BUILD_FAILED
|
||||
|
||||
del /S ..\distrib\NZBGet\_*.*
|
||||
|
||||
@@ -90,7 +90,7 @@ BEGIN
|
||||
CTEXT "Version 15.0-testing-r1200",IDC_ABOUT_VERSION,16,70,144,8
|
||||
CTEXT "Lightweight usenet downloader",IDC_STATIC,16,83,144,8
|
||||
CTEXT "http://nzbget.net",IDC_ABOUT_HOMEPAGE,55,144,64,9,SS_NOTIFY
|
||||
CTEXT "Copyright <20> 2007-2018 Andrey Prygunkov",IDC_STATIC,16,156,144,8
|
||||
CTEXT "Copyright <20> 2007-2019 Andrey Prygunkov",IDC_STATIC,16,156,144,8
|
||||
ICON "",IDC_ABOUT_ICON,67,7,21,20
|
||||
CTEXT "NZBGet",IDC_ABOUT_NAME,16,51,144,16
|
||||
CTEXT "The package includes other software; see program's folder for licenses.",IDC_STATIC,16,121,144,20
|
||||
|
||||
Reference in New Issue
Block a user