Releases: CSOIreland/Server-API-Library
7.0.16-RTM
- [ENHANCEMENT] updated Microsoft.Extensions.DependencyInjection to 9.0.0
- [ENHANCEMENT] updated System.Diagnostics.PerformanceCounter to 9.0.0
- [ENHANCEMENT] updated System.DirectoryServices.AccountManagement to 9.0.0
- [ENHANCEMENT] updated Microsoft.Extensions.Logging to 9.0.0
- [ENHANCEMENT] change parse request from fatal logs to error logs
- [ENHANCEMENT] change MemCacheD ValidateExpiry to log errors if changing cache expiry times rather than info
- [ENHANCEMENT] created 3 new appsettings properties
> int API_CACHE_LOCK_POLL_INTERVAL { get; }
> string API_CACHE_LOCK_PREFIX { get; }
> int API_CACHE_LOCK_MAX_TIME { get;} - [ENHANCEMENT] added GetSHA256 (copy of function in utility.cs) function to memcached class
- [ENHANCEMENT] created custom configuration exception
- [ENHANCEMENT] created private function metaCacheLock
- [ENHANCEMENT] create new Get_BSO_WITHLOCK functionality for cache stampede protection
- [ENHANCEMENT] create new Store_BSO_REMOVELOCK functionality for cache stampede protection
- [ENHANCEMENT] added cache tracing for cache lock
- [ENHANCEMENT] updated api cache trace table
- [ENHANCEMENT] added 2 new values to MemCachedD_Value class
> decimal cacheLockDuration
> bool cacheLockUsed - [ENHANCEMENT] validated config for memcache on application pool startup
- [ENHANCEMENT] added new cache_lock_settings block to cachesettings block of appsettings.json with new keys
"CacheSettings": {
"API_MEMCACHED_SALSA": "apd_test1_3",
"API_MEMCACHED_MAX_VALIDITY": "2592000",
"API_MEMCACHED_MAX_SIZE": "128",
"API_MEMCACHED_ENABLED": true,
"API_CACHE_TRACE_ENABLED": true,
"API_CACHE_LOCK_MAX_TIME": "10",
"API_CACHE_LOCK_SETTINGS": {
"API_CACHE_LOCK_ENABLED": false,
"API_CACHE_LOCK_POLL_INTERVAL": "1",
"API_CACHE_LOCK_PREFIX": "LCK",
"API_CACHE_LOCK_MAX_TIME": "30"
}
},
- [ENHANCEMENT] REMOVED public static CacheSettings CacheSettings; from apiserviceshelper
7.0.15-RTM
- [ENHANCEMENT] added argon2 sha256 methods -- GetArgon2SHA256 and VerifyArgon2SHA256
- [BUG FIX] moved where trace.TrcRequestVerb = requestMethod; as if blockedurls used then verb wouldn't be set
- [BUG FIX] updated GatherTraceInformation to take in an IRequest interface and check the interface type to determine the parameters
- [ENHANCEMENT] upgraded EnyimMemcachedCore from 3.2.1 to 3.2.3
- [ENHANCEMENT] upgraded Microsoft.Extensions.DependencyInjection from 8.0.0 to 8.0.1
- [ENHANCEMENT] upgraded Microsoft.Extensions.Logging from 8.0.0 to 8.0.1
- [ENHANCEMENT] upgraded System.Diagnostics.PerformanceCounter from 8.0.0 to 8.0.1
- [ENHANCEMENT] upgraded System.DirectoryServices.AccountManagement from 8.0.0 to 8.0.1
Full Changelog: 7.0.14-RTM...7.0.15-RTM
7.0.14-RTM
- [ENHANCEMENT] updated code to allow application pool to start if memcache is unavailable
- [ENHANCEMENT] removed ApplicationLoaded flag from api as if there is no API config loaded on application startup then let an exception be thrown that is not caught
- [ENHANCEMENT] updated ICacheConfig to allow API_MEMCACHED_ENABLED to be set in Code
- [ENHANCEMENT] updated MemCacheD constructor to have the stats query within try catch Block
- [ENHANCEMENT] updated ConsoleConfiguration.cs to remove ApplicationLoaded flag
- [BUG FIX] updated ReadJSONSettings to return null if the version that is being looked for is not there
Full Changelog: 7.0.13-RTM...7.0.14-RTM
7.0.13-RTM
- [LIBRARY UPDATE] upgraded microsoft.data.sqlclient to 5.2.2
Full Changelog: 7.0.12-RTM...7.0.13-RTM
7.0.12-RTM
- [ENHANCEMENT] allow json config files to have strings or json objects using CombineSectionValues function
Full Changelog: 7.0.11-RTM...7.0.12-RTM
7.0.11-RTM
- [BUG FIX] restored microsoft.data.sqlclient to correct version
Full Changelog: 7.0.10-RTM...7.0.11-RTM
7.0.10-RTM
- [ENHANCEMENT] refactored configuration insert to deployupdate table
- [ENHANCEMENT] removed scoped ADO as never used
- [ENHANCEMENT]refactored to use a using statement
> using var performanceCollector = new PerformanceCollector();
> using var cancelPerformance = new CancellationTokenSource();
> using var apiCancellationToken = new CancellationTokenSource();
Full Changelog: 7.0.8-RTM...7.0.10-RTM
7.0.8-RTM
7.0.8 release => [ENHANCEMENT] added referrer and content length to api trace
7.0.7 release => [ENHANCEMENT] check that restful, head and static statuscodes for return are valid
Full Changelog: 7.0.6-RTM...7.0.8-RTM
7.0.6-RTM
[BUG FIX] trace method and params not being recorded if cache trace disable
[ENHANCEMENT] changed when trace gets its correlationID
[ENHANCEMENT] removed threadAbortException as performance thread abort is handled in its own try catch. removed from middleware,static, jsonrpc and RESTful
[BUG FIX] added try catch around dictionary tryadd function use
[ENHANCEMENT] improved logging for jsonrpc and restful requests
[BUG FIX] returnResponseAsync now raises OperationCanceledException rather than TaskCanceledException
[ENHANCEMENT] wrap performance thread creation in existing try catch block
[BUG FIX] change from sending e.message to "Bad Request" in restful and static exception response
[ENHANCEMENT] changing attribute dictionarys to be ConcurrentDictionary
Full Changelog: 7.0.5-RTM...7.0.6-RTM