11 KiB
11 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Upcoming Test - 0000-00-00
Added
- Added
SnapshotAssertfor better UnitTesting
Upcoming - 0000-00-00
Changed
- Moved
AMWD.Common.MoqtoAMWD.Common.Test
v2.0.0 - 2023-08-08
Added
CommandLineParseras alternative to theConfigurationBuilder.AddCommandLinefrom Microsoft
Removed
- Support for .NET Core 3.1
v1.13.0 - 2023-06-27
Added
ProtectedPathMiddlewareto secure even static file paths
Changed
- Moved
BasicAuthentication* into sub-namespaceSecurity
v1.12.0 - 2023-06-01
Changed
- Renamed
IPBlacklistAttributetoIPBlockListAttribute - Renamed
IPWhitelistAttributetoIPAllowListAttribute HttpContextExtensionsGetAntiforgeryToken()now returns the header name alsoGetRemoteIpAddress()checks following additional headers by default:X-Forwarded-ForX-Real-IPCF-Connecting-IP
v1.11.1 - 2023-05-11
Fixed
JsonExtensions.GetValue<T>()now is case insensitive and detects the correct property name of aJObject.
v1.11.0 - 2023-03-29
Added
directory.build.propsanddirectory.build.targetsGetDisplayName()extension for enums (DisplayAttribute(Name = ""))FileLoggeras additionalILoggerimplementation (fromMicrosoft.Extensions.Logging)StartTransaction(Async)asDbContextextensions; prevents exceptions onInMemorydatabase
v1.10.0 - 2022-09-18
Fixed
- Over-/Underflow behaviour for IPAddress de-/increment
- Await behaviour for AsyncQueue (not required to marshal back to the original captured context)
Removed
- Removing dependency from DNS package It's now used via reflection when possible (otherwise exeption)
v1.9.0 - 2022-08-14
Added
AsyncQueue<T>toAMWD.Common.Utilitieswith namespaceSystem.Collections.Generic
v1.8.1 - 2022-08-07
Fixed
- UnitTests
- BasicAuthentication modules now all use the cancellation token
v1.8.0 - 2022-08-07
Added
- Converters for
Newtonsoft.JsonByteArrayHexConverterto get an byte array as hex string instead of Base64IPAddressConverterto makeSystem.Net.IPAdresses (and list forms) serializableIPNetworkConverterto makeMicrosoft.AspNetCore.HttpOverrides.IPNetwork(and list forms) serializable
- Formatters for
MessagePackIPAddressFormatterto serialize anSystem.Net.IPAddressIPAddressArrayFormatterto serialize arrays ofSystem.Net.IPAddressesIPAddressListFormatterto serialize lists ofSystem.Net.IPAddressesIPNetworkFormatterto serialize anMicrosoft.AspNetCore.HttpOverrides.IPNetworkIPNetworkArrayFormatterto serialize arrays ofMicrosoft.AspNetCore.HttpOverrides.IPNetworkIPNetworkListFormatterto serialize lists ofMicrosoft.AspNetCore.HttpOverrides.IPNetwork
Changed
IBasicAuthenticationValidatorhas the possibillity to cancel the operation
v1.7.0 - 2022-07-24
Added
- UnitTests for
AspNetCoreas far as testable without massive work IPAddress.IncrementandIPAddress.DecrementextensionsNetworkHelper.ParseNetworkandNetworkHelper.TryParseNetworkto parse a CIDR (e.g. 192.168.178.0/24) networkIPNetwork.ExpandNetworkto create a list with all containedIPAddresses
Changed
BasicAuthenticationAttributenow respects theIBasicAuthenticationValidator.Realmwhen the ownRealmproperty is not set- CI scripts
- Updated all package references to latest builds (as on 2022-07-23)
Removed
IBasicAuthenticationValidator.Realmis now a read-only property (removed public set)
v1.6.1 - 2022-06-23
Added
BasicAuthenticationAttributesets theHttpContext.Userproperty when successfully validated
Changed
- Moved
BasicAuthenticationAttributefromActionFiltertoIAsyncAuthorizationFilter
Fixed
TimeSpan.ToShortString()is now capable of negative values
v1.6.0 - 2022-06-22
Changed
- All attributes now reside in
Microsoft.AspNetCore.Mvc.Filtersnamespace
Fixed
- Fixed
BasicAuthenticationAttribute
v1.5.3 - 2022-06-22
Changed
BasicAuthenticationAttributeis now in namespaceAMWD.Common.AspNetCore.Attributes
Fixed
- Fixed problem with
ForbidResultwithout having an authentication schema defined Now only HTTP Status 403 (Forbid) is returned
v1.5.2 - 2022-06-20
Removed
- Removed support for .NET 5.0 due to EOL (2022-05-10, see .NET and .NET Core release lifecycle)
v1.5.1 - 2022-06-20
Changed
- Changed from
Assembly.GetExecutingAssmebly().LocationtoAppContext.BaseDirectorydue to single-file applications
v1.5.0 - 2022-06-15
Added
TcpClientMoqto test communication via aTcpClient- EntityFramework Core Converters for new
DateOnlyandTimeOnlydatatypes when using SQL Server on .NET 6.0 (Bug on Microsoft's EntityFramework) HttpContext.IsLocalRequest()to determine whether the request was from local or remoteIPWhitelistAttributeandIPBlacklistAttributeto allow/restrict access on specific controllers/actions
v1.4.3 - 2022-05-12
Fixed
- Fixed detection of SQLServer for EFCore extensions
v1.4.2 - 2022-05-06
Added
- New extension for
StringBuilderAppendLine(value: string, newLine: string)to add a line with a explicit defined new line character
v1.4.1 - 2022-03-23
Added
IntegrityHashTagHelpercan be used withasp-integrity="true|false"andasp-integrity-strength="256|384|512"WaitAvailableAsynccan be used to wait for a database connection to be available
Changed
ApplyMigrationsAsyncusesWaitAvailableAsyncinternally
Fixed
InMemorydatabase provider does not fail on "migration" (none possible)
v1.4.0 - 2022-02-11
Added
- New NuGet package
AMWD.Common.MoqwithHttpRequestHandlerMoqclass - Supporting
InMemoryDatabase as provider
Changed
- Enhanced Stopwatch/Timer delta due to unsharp resolution using timers
IBasicAuthenticationValidatornow also provides the realm as property (resolving a string on DI is bad style)
v1.3.0 - 2021-12-21
Added
BasicAuthenticationHandlerto use instead of other handlers (instead of e.g. CookieAuthentication)BasicAuthenticationAttributeto restrict single actions
Changed
- Simplified package references on AspNetCore
- Changed NuGet package
DnsClienttoDNS
v1.2.0 - 2021-12-19
Added
- CHANGELOG
HtmlHelper.IsDarkColorto classify a color as dark or light one (by luminance)ReadLineandReadLineAsyncasStreamExtensions
Changed
- Unit-Tests enhanced
- Unit-Tests excluded from code coverage calcualtion
- Updated NuGet package
NetRevisionTask
v1.1.0 - 2021-11-22
Added
AddSingletonHostedService<TService, TImplementation>using an interface and an implementation type- Unit-Tests for
AMWD.Common(ca. 60% Branch-Coverage, target: above 90%) IsValidEmailAddresscheck whether a string is a valid email address, optionally with DNS check (MX record)- AES and 3DES De-/Encrypt enhanced for string to string (plain/base64)
Changed
- CI Build-Process splitted into: build, test, deploy
GetAlignedIntervalsplitted intoGetAlignedIntervalUtcandGetAlignedIntervalLocalto respect daylight saving timesHexToByteschecks for valid characters by using RegEx
Fixed
Sha256as string extension
v1.0.2 - 2021-11-09
Added
- .NET 6.0 (LTS) compatibility
- Versioning in README
Changed
- CI Build modified
- C# Update from 9.0 to 10.0
Fixed
- Comments updated / enhanced
v1.0.1 - 2021-10-25
Added
ParseDecimaladded to prevent problems with comma/dot as decimal separator
Changed
- NuGet packages reside on
artifacts/
Fixed
- MySQL library is now working correctly via reflection
v1.0.0 - 2021-10-24
Added
- Lizenz
- Readme
Changed
CustomFloatingPointModelBinder*renamed toInvariantFloatingPointModelBinder*ResolveHostreturns a list of resolved ip addressesResolveInterfacereturns a list of resolved ip addresses
Removed
IPAddress fallbackparameter removed fromResolveHostIPAddress fallbackparameter removed fromResolveInterfaceResolveInterfacedoes not use DNS to resolve the input (kind a weired behaviour)
v0.0.2 - 2021-10-23
Added
- NuGet packages have an icon
Changed
- Additional information for NuGet packages
v0.0.1 - 2021-10-23
Initial release