Releases: kkalinowski/lib12
Releases · kkalinowski/lib12
2.6
2.5
Added:
- Lots of additional reflection extensions. Methods like GetConstant, IsMarkedWithAttribute, IsImplementingInterface and more for all reflection constructs like Type, MethodInfo, PropertyInfo, etc.
- Support for ReadOnlyCollection and ReadOnlyDictionary in the Pack, Empty, IEnumerable and IDictionary
- Execution.Repeat and Execution.Retry overloads
- Concat and Recover extensions for the IDictionary
- DateTime.GetYesterday and DateTime.GetTomorrow
Renames (previous classes and methods stays as obsolete)
- object.SetProperty - use Type.SetPropertyValueByName
- Type.GetPropertyValue - use Type.GetPropertyValueByName
Other:
- marked whole PerformanceCheck class as obsolete instead of just Benchmark method
- added Sonar for code quality checking
- added NCrunch config
2.4
Added:
- ArrayExtensions with methods to Flatten array
- ExceptionExtensions with methods to access inner exceptions
- Execution class to work with method calls - Repeat, Retry, Benchmark, Memoize
- WithoutNulls extension method for linq
Renames (previous classes and methods stays as obsolete)
- PerformanceCheck - use Execution.Benchmark
Other:
- added NCrunch configuration
- added R# formatting settings
2.3
Added:
- Lots of extension methods for DateTime
- ICollectionExtensions
- PropertyOrderComparer and PropertyEqualityComparer
- Nullable bool extensions
Renames (previous classes and methods stays as obsolete)
- EqualsIgnoreCase to EqualsCaseInsensitve, EqualsMatchCase to EqualsCaseSensitve, ContainsIgnoreCase to ContainsCaseInsensitve
- IsTypeNumericOrNullableNumeric to IsNumberOrNullableNumber
Fixes:
- EqualsCaseInsensitve and EqualsCaseSensitve better handle nulls
- Paging extension methods are now indeed extension methods, not instance methods
- DictionaryExtension is now IDictionaryExtension
Other:
- added unit tests for non-covered code
- remove not needed folders
2.2
Added:
- ConstrainFactory.AddFactoryMethodConstrain
- string.Capitalize
- Paging - collection.GetPage()
- packing multiple objects into collection with Pack class
- Math.IsOdd and Math.IsEven
- Type.IsIntegralNumber and Type.IsFloatingPointNumber
- defaultValue parameter for Dictionary.GetValueOrDefault()
Renames (previous classes and methods stays as obsolete)
- Is renamed to IsAnyOf, IsNot renamed to IsNotAnyOf
- MathExt renamed to Math2
- IsTypeNumeric renamed to IsNumber
Fixes:
- Added missing xml documentation
- Better company names in FakeData.Companies
Other:
- updated external dependencies in a test project
- using Roslynator for static code analysis
- added unit tests for non-covered code
2.1
Added:
- Type.IsStatic()
- int.ToBool()
- bool.ToInt()
- string.GetNumberOfOccurances()
- string.GetAllOccurances()
Fixes:
- object.In() and object.NotIn() handles nulls
Other:
- added unit tests for object.Is() and object.IsNot()
2.0
- Cleaning existing code
- Added missing documentation
- Remove Dependency Injection module
- Added support for .NET Standard 2.0