diff --git a/.travis.yml b/.travis.yml index fc1f60b4be..b150d1147d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,12 +10,10 @@ env: - BUILD_CONFIGURATION=Release mono: + - 5.8.0 - 5.4.0 - 5.2.0 - 5.0.1 - - 4.8.1 - - 4.6.2 - - 4.4.2 addons: apt: diff --git a/CHANGELOG.md b/CHANGELOG.md index a5a1306b6a..7c5bca37e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to this project will be documented in this file. -## v1.24.0-PRE2 +## v1.24.0 ### Features @@ -32,6 +32,9 @@ All notable changes to this project will be documented in this file. - [Multiple] Handle invalid installs better (#2283 by: HebaruSan; reviewed: politas) - [Core] Capture error details from SharpZipLib for invalid ZIPs (#2287 by: HebaruSan; reviewed: politas) - [Netkan] Check zip validity in netkan (#2288 by: HebaruSan; reviewed: politas) +- [Core] Replace colons with hyphens in archive URLs (#2290 by: HebaruSan; reviewed: techman83) +- [Core] Force-allow TLS 1.2 on .NET 4.5 (#2297 by: HebaruSan; reviewed: politas) + ## v1.24.0-PRE1 (McCandless) diff --git a/Cmdline/Main.cs b/Cmdline/Main.cs index 42ebf8d43f..9cd5e74d89 100644 --- a/Cmdline/Main.cs +++ b/Cmdline/Main.cs @@ -4,6 +4,7 @@ // License: CC-BY 4.0, LGPL, or MIT (your choice) using System; +using System.Net; using System.Diagnostics; using System.IO; using System.Linq; @@ -50,6 +51,10 @@ public static int Main(string[] args) Logging.Initialize(); log.Info("CKAN started."); + // Force-allow TLS 1.2 for HTTPS URLs, because GitHub requires it. + // This is on by default in .NET 4.6, but not in 4.5. + ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; + // If we're starting with no options then invoke the GUI instead. if (args.Length == 0) { diff --git a/Netkan/Program.cs b/Netkan/Program.cs index 32ddecc32e..8c14a4df0f 100644 --- a/Netkan/Program.cs +++ b/Netkan/Program.cs @@ -1,4 +1,5 @@ using System; +using System.Net; using System.Diagnostics; using System.IO; using System.Linq; @@ -31,6 +32,10 @@ public static int Main(string[] args) { ProcessArgs(args); + // Force-allow TLS 1.2 for HTTPS URLs, because GitHub requires it. + // This is on by default in .NET 4.6, but not in 4.5. + ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; + // If we see the --version flag, then display our build info // and exit. if (Options.Version) diff --git a/quotes.txt b/quotes.txt index c6a4f679da..84eddfa6a1 100644 --- a/quotes.txt +++ b/quotes.txt @@ -70,3 +70,8 @@ It is truly amazing how many extensions to BDArmory are only compatible with a KSP version that BDArmory is not compatible with. -- politas, NetKAN#4169 +% + It's crazy that an app has to specify which version of TLS to use to get an HTTPS URL + I mean, how the heck do we know? You're WebClient, you figure it out!! + + -- regarding CKAN#2297