From bb83b59f76b0ba326e7b9be44e59deb1c8c1a814 Mon Sep 17 00:00:00 2001 From: "Denis Kuzmin (github/3F)" Date: Wed, 7 Feb 2024 15:59:09 +0300 Subject: [PATCH] GetNuTool 1.9 Public release * FIXED: TLS 1.3 (and newer versions) support. * FIXED: Invalid return code in gnt.bat in attempt to use `||` * FIXED: Incorrect delayed expansion when embedding gnt.bat * NEW: Added `break` option to control the break on first package error when multiple receiving. * NEW: Hash values control using `sha1` for receiving every package if used unsecured channels (~windows xp) etc. `get` & `grab` modes; packages.config & inline records support. * NEW: Implemented alias to `ngpackages=...` gnt.bat. ``` gnt Conari gnt "regXwild;Fnv1a128" ``` * NEW: Added new `grab` mode. Grabs data without unpacking. The available parameters are similar to `get`. ``` gnt Huid/1.0.0:src.nupkg /t:grab gnt :../netfx4sdk.cmd /t:grab /p:ngserver=https://server/netfx4sdk.cmd ``` * NEW: `ssl3=true` option to not drop legacy ssl3, tls1.0, tls1.1. * NEW: Added `logo` global property to hide logo when processing starts. * NEW: Extra C# edition: GetNuTool.cs includes a fully compatible gnt.core inside. (.NET Framework 4.0+, .NET 5+, Mono, .NET Core, .NET Standard) ``` var gnt = new net.r_eg.GetNuTool(); gnt.Run(ngpackages: "Conari;regXwild"); ... gnt.Run(ngpackages: "Fnv1a128"); ``` * CHANGED: ngconfig default values: packages.config;.tools\packages.config * CHANGED: Removed `-msbuild` key in gnt.bat. Override engine instead. * CHANGED: Overriding engine in gnt.bat via msb.gnt.cmd (either file or environment variable) * CHANGED: Dropped support for ssl3 + tls1.0 + tls1.1 by default. Set `ssl3=true` to cancel this. * NOTE: GetNuTool releases are now accompanied by a .sha1 file in the official distribution; At the same time, commits from which releases are published are signed with the committer's verified signature (GPG). Make sure you are using official, unmodified, safe versions. https://github.com/3F/GetNuTool/releases/latest --- .version | 2 +- Readme.md | 21 ++++++++++++-- changelog.txt | 77 +++++++++++++++++++++++++++++++++++++++++++-------- 3 files changed, 85 insertions(+), 15 deletions(-) diff --git a/.version b/.version index afa2b35..abb1658 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -1.8.0 \ No newline at end of file +1.9.0 \ No newline at end of file diff --git a/Readme.md b/Readme.md index fad0594..c7b0f43 100644 --- a/Readme.md +++ b/Readme.md @@ -68,7 +68,7 @@ However! GetNuTool has more powerful ways even for standard NuGet packages provi * Install *.nupkg* packages from remote NuGet (or like: chocolatey, ...) servers. * Grab or Install any *zipped* packages from direct sources (local, remote http, https, ftp, ...). * Controlled unpacking of all received packages. Modes: `get` or `grab` -* Hash values control using `sha1` for receiving every package if used unsecured channels (~windows xp) etc. +* Hash values control using [`sha1`](https://en.wikipedia.org/wiki/SHA-1) for receiving every package if used unsecured channels (~windows xp) etc. * Creating new NuGet packages *.nupkg* from *.nuspec*. * Two supported formats: xml *packages.config* (+extra: output, sha1) and inline records. * Inline records and packages.config are fully compatible between, and config has backward compatibility with original packages.config @@ -254,9 +254,9 @@ gnt.Run(ngpackages: "Fnv1a128"); First key to gnt.bat | Description | Example ----------------------|-------------------------------------------------------------------------------|---------------- - ... | 1.9+ alias to `ngpackages=...` | `gnt Conari`, `gnt "regXwild;Conari"` + ... | 1.9+ alias to `ngpackages=...` | `gnt Conari`, `gnt "regXwild;Fnv1a128"` `-unpack` | 1.6+ To generate minified gnt.core from gnt.bat. | `gnt -unpack` - ~~`-msbuild`~~ path | 1.6 - 1.8 To use specific msbuild. Removed in 1.9, use *hMSBuild* instead | `gnt -msbuild "D:\MSBuild\bin\amd64\msbuild" /p:ngpackages=Conari` + ~~`-msbuild`~~ path | 1.6 - 1.8 To use specific msbuild. Removed in 1.9. Override engine instead | `gnt -msbuild "D:\MSBuild\bin\amd64\msbuild" /p:ngpackages=Conari` #### Override engine @@ -366,6 +366,21 @@ git clone https://github.com/3F/GetNuTool.git src cd src & build & bin\Release\gnt Conari ``` +### .sha1 official distribution + +*GetNuTool* releases are now accompanied by a *.sha1* file in the official distribution; At the same time, commits from which releases are published are signed with the committer's verified signature (GPG). + +Make sure you are using official, unmodified, safe versions. + +Note: *.sha1* file is a text list of published files with checksums in the format: + +`40-hexadecimal-digits` `` `file` + +``` +eead8f5c1fdff2abd4da7d799fbbe694d392c792 path\file +... +``` + ## Contributing [*GetNuTool*](https://github.com/3F/GetNuTool) is waiting for your awesome contributions! \ No newline at end of file diff --git a/changelog.txt b/changelog.txt index 199b823..f5dd79a 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,7 +1,62 @@ +- - - - - - - - - - - - - - - - - - - - - GetNuTool - https://github.com/3F/GetNuTool -- - - - - +- - - - - - - - - - - - - - - - - - - - - -[v1.8] 2020.01.16 +[1.9] 2024.02.07 + + * FIXED: TLS 1.3 (and newer versions) support. + + * FIXED: Invalid return code in gnt.bat in attempt to use `||` + + * FIXED: Incorrect delayed expansion when embedding gnt.bat + + * NEW: Added `break` option to control the break on first package error when multiple receiving. + + * NEW: Hash values control using `sha1` for receiving every package if used unsecured channels (~windows xp) etc. + `get` & `grab` modes; packages.config & inline records support. + + * NEW: Implemented alias to `ngpackages=...` gnt.bat. + ``` + gnt Conari + gnt "regXwild;Fnv1a128" + ``` + + * NEW: Added new `grab` mode. Grabs data without unpacking. The available parameters are similar to `get`. + ``` + gnt Huid/1.0.0:src.nupkg /t:grab + gnt :../netfx4sdk.cmd /t:grab /p:ngserver=https://server/netfx4sdk.cmd + ``` + + * NEW: `ssl3=true` option to not drop legacy ssl3, tls1.0, tls1.1. + + * NEW: Added `logo` global property to hide logo when processing starts. + + * NEW: Extra C# edition: GetNuTool.cs includes a fully compatible gnt.core inside. + (.NET Framework 4.0+, .NET 5+, Mono, .NET Core, .NET Standard) + ``` + var gnt = new net.r_eg.GetNuTool(); + gnt.Run(ngpackages: "Conari;regXwild"); + ... + gnt.Run(ngpackages: "Fnv1a128"); + ``` + + * CHANGED: ngconfig default values: packages.config;.tools\packages.config + + * CHANGED: Removed `-msbuild` key in gnt.bat. Override engine instead. + + * CHANGED: Overriding engine in gnt.bat via msb.gnt.cmd (either file or environment variable) + + * CHANGED: Dropped support for ssl3 + tls1.0 + tls1.1 by default. + Set `ssl3=true` to cancel this. + + * NOTE: GetNuTool releases are now accompanied by a .sha1 file in the official distribution; + At the same time, commits from which releases are published are signed with the committer's verified signature (GPG). + + Make sure you are using official, unmodified, safe versions. + https://github.com/3F/GetNuTool/releases/latest + + +[1.8] 2020.01.16 * CHANGED: Changed `%~dp0` to `%cd%` processing for the following in batch version by default: @@ -52,7 +107,7 @@ GetNuTool - https://github.com/3F/GetNuTool New way for argument passing into the main core. -[v1.6.2] 2018.08.05 +[1.6.2] 2018.08.05 * FIXED: Bug when the output path for packages may contain `:` e.g. like absolute path from %cd% ~ D:\path\... @@ -62,7 +117,7 @@ GetNuTool - https://github.com/3F/GetNuTool * NEW: Implemented proxy support via `$(proxycfg)`. Issue #5 -[v1.6.1] 2017.08.18 +[1.6.1] 2017.08.18 * FIXED: Fixed problem "Input string was not in a correct format" when used version with release type, e.g.: 1.2.3-alpha, 1.2.3-beta-2, 1.2.3-rc ... @@ -74,7 +129,7 @@ GetNuTool - https://github.com/3F/GetNuTool * CHANGED: Changed variable name %msbuild% to %msbuildexe% that was related for Issue #2 * CHANGED: Improved comparing arguments for executable version. -[v1.6] 2016.12.08 +[1.6] 2016.12.08 * NEW: Executable version. Implemented `-unpack` command. To generate minified version from executable. @@ -100,36 +155,36 @@ GetNuTool - https://github.com/3F/GetNuTool * CHANGED: Value of `ngconfig` property now is `packages.config` by default. -[v1.5] +[1.5] * FIXED: error MSB4018 `Value cannot be null`, if the `/p:wpath` key is not defined. -[v1.4] +[1.4] * NEW: Added `/p:wpath` key to define working directory. * NEW: Support of executable package. * NEW: MSBuild searcher. -[v1.3] +[1.3] * NEW: Added `/p:debug` to display additional information from selected command. * CHANGED: Compact output for processed files. * CHANGED: CA2202 -> sout -[v1.2] +[1.2] * NEW: Packing packages into .nupkg by using .nuspec * CHANGED: The `get` & `pack` commands for calling of main features. * CHANGED: Attributes of packages.config is now are case sensitive. Use lowercase for `id`, `version`, `output` * CHANGED: For `get` command: ignoring technical data from package like: /_rels, /package, etc. -[v1.1] +[1.1] * FIXED: Incorrect path to Microsoft.Build.Tasks.dll with new MSBuild 14.0 * NEW: Compact version - `gnt-compact.core` * CHANGED: Ignoring downloading if this folder is already exists. Remove folder to avoid restriction. -[v1.0] +[1.0] * The first point - lightweight non-binary tool for getting the NuGet packages via MSBuild Tool