From a41583d40406aa20cd3f608b1b505f65362339cd Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Fri, 6 Nov 2020 23:00:12 +0200 Subject: [PATCH 1/6] Update README.md --- Source/Gapotchenko.FX.Console/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Gapotchenko.FX.Console/README.md b/Source/Gapotchenko.FX.Console/README.md index 85fb509a..d2a69ad2 100644 --- a/Source/Gapotchenko.FX.Console/README.md +++ b/Source/Gapotchenko.FX.Console/README.md @@ -14,7 +14,7 @@ At later stages of development, teletypes were swapped with specialized computer Those electronic devices provided not only the basic input/output capabilities, but also colors, pseudographics, and a custom control language based around a then-emerging [ANSI X3.64](https://en.wikipedia.org/wiki/ANSI_escape_code) standard. -Unix operating systems have built-in support for ANSI escape sequences that constitute the control language defined by the standard. Windows ignored that practice for a long time, up until Windows 10 version 1511. +Unix operating systems have a built-in support for ANSI escape sequences that constitute the control language defined by the standard. Windows ignored that practice for a long time, up until Windows 10 version 1511. ### What ANSI Escape Sequences Are Useful For? From 9a7b0de11a8f4f3d6761d8f57a163e4ef646c984 Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Fri, 13 Nov 2020 21:58:48 +0200 Subject: [PATCH 2/6] Update README.md --- Source/Gapotchenko.FX.Reflection.Loader/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Gapotchenko.FX.Reflection.Loader/README.md b/Source/Gapotchenko.FX.Reflection.Loader/README.md index 10092911..95bb0949 100644 --- a/Source/Gapotchenko.FX.Reflection.Loader/README.md +++ b/Source/Gapotchenko.FX.Reflection.Loader/README.md @@ -216,7 +216,7 @@ In this way, assembly loaders from different plugins would not clash with each o ## Scenario #4. Automatic handling of binding redirects for a .DLL assembly Assembly binding redirects allow to "remap" specific ranges of assembly versions. -The redirects are automatically created by build tools, and then put to corresponding `.config` files of resulting assemblies. +The redirects are automatically created by build tools, and then being put to corresponding `.config` files of resulting assemblies. [(Learn more)](https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/how-to-enable-and-disable-automatic-binding-redirection) Assembly binding redirects work well for apps, but get completely broken if you want to employ them for dynamically loaded assemblies like plugins. From 192ad80ceb40e9341d59f25e5c871b635986405b Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Thu, 19 Nov 2020 18:37:12 +0200 Subject: [PATCH 3/6] Update README.md --- Source/Gapotchenko.FX.Console/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Gapotchenko.FX.Console/README.md b/Source/Gapotchenko.FX.Console/README.md index d2a69ad2..3e2ff8be 100644 --- a/Source/Gapotchenko.FX.Console/README.md +++ b/Source/Gapotchenko.FX.Console/README.md @@ -19,10 +19,10 @@ Unix operating systems have a built-in support for ANSI escape sequences that co ### What ANSI Escape Sequences Are Useful For? Indeed, .NET base class library already provides +[`System.Console`](https://docs.microsoft.com/en-us/dotnet/api/system.console) class with [`ForegroundColor`](https://docs.microsoft.com/en-us/dotnet/api/system.console.foregroundcolor), [`BackroundColor`](https://docs.microsoft.com/en-us/dotnet/api/system.console.backgroundcolor) -and other properties of [`System.Console`](https://docs.microsoft.com/en-us/dotnet/api/system.console) class -for controlling the console. +and other properties for controlling the console. ANSI escape sequences become handy when the complexity of console output reaches a certain level: From 03a146382e2fe70cd8add7a31a0dd193fd930cf0 Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Wed, 25 Nov 2020 23:36:31 +0200 Subject: [PATCH 4/6] Update README.md --- Source/Gapotchenko.FX.Diagnostics.Process/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Gapotchenko.FX.Diagnostics.Process/README.md b/Source/Gapotchenko.FX.Diagnostics.Process/README.md index 9b668ea3..d0096958 100644 --- a/Source/Gapotchenko.FX.Diagnostics.Process/README.md +++ b/Source/Gapotchenko.FX.Diagnostics.Process/README.md @@ -68,7 +68,7 @@ Lost files, potentially corrupted extensions and so on. Meet the `End()` method provided by `Gapotchenko.FX.Diagnostics.Process` module. It allows to end a process according to a specified mode of operation. -The default mode of operation is `ProcessEndMode.Complete` that follows a sequence below: +The default mode of operation is `ProcessEndMode.Complete` that follows a sequence presented below: 1. Graceful techniques are tried first: 1.1. `End()` method tries to close a main window of a process From 17fbf970d1c00e77561ee8449da91d20353024dd Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Wed, 25 Nov 2020 23:37:17 +0200 Subject: [PATCH 5/6] Update README.md --- Source/Gapotchenko.FX.Diagnostics.Process/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Gapotchenko.FX.Diagnostics.Process/README.md b/Source/Gapotchenko.FX.Diagnostics.Process/README.md index d0096958..7d3d677f 100644 --- a/Source/Gapotchenko.FX.Diagnostics.Process/README.md +++ b/Source/Gapotchenko.FX.Diagnostics.Process/README.md @@ -74,7 +74,7 @@ The default mode of operation is `ProcessEndMode.Complete` that follows a sequen 1.1. `End()` method tries to close a main window of a process 1.2. If that fails, it tries to send Ctrl+C (SIGTERM) signal 2. Forceful techniques: - 2.1. If graceful techniques failed, `End()` method tries to exit the process (suitable for the current process only) + 2.1. If graceful techniques fail, `End()` method tries to exit the process (suitable for the current process only) 2.2. If that fails, it kills the process (SIGKILL) The method returns a `ProcessEndMode` value on completion indicating how the process was actually ended. From e5331ccd6233dfa89dbd2e8c8ac5f236cee3afd7 Mon Sep 17 00:00:00 2001 From: Oleksiy Gapotchenko Date: Sat, 15 May 2021 21:37:54 +0300 Subject: [PATCH 6/6] Update README.md --- Source/Gapotchenko.FX.Reflection.Loader/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Gapotchenko.FX.Reflection.Loader/README.md b/Source/Gapotchenko.FX.Reflection.Loader/README.md index 95bb0949..4f3159dd 100644 --- a/Source/Gapotchenko.FX.Reflection.Loader/README.md +++ b/Source/Gapotchenko.FX.Reflection.Loader/README.md @@ -19,7 +19,7 @@ Assembly loading plays a crucial role in .NET apps. Once the app is started, .NET runtime ensures that all required assemblies are gradually loaded. Whenever the code hits the point where a type from another assembly is used, it raises `AppDomain.AssemblyResolve` event. -The good thing is .NET comes pre-equipped with default assembly loader which does a sensible job for most applications. +The good thing is .NET comes pre-equipped with a default assembly loader, which does a sensible job for most applications. However, there are situations when having a default assembly loader is just not enough. This is where `Gapotchenko.FX.Reflection.Loader` module becomes extremely handy.