Releases: mikependon/RepoDB
Fix the MDS v5.0.1 Memory Leaks | Bug Fixes
This release has included the updates to fix the Memory Leak issue of the MDS 5.0.1 (see dotnet/SqlClient#1810). It also contains some of the minor bug fixes.
RepoDb (v1.13.1) 🚀
- Feature: Introduce the SkipQuery operation. #377
- Bug: RepoDb.SqlServer v1.13.0 - Memory leak in Microsoft.Data.SqlClient 5.0.1 #1128
- Introduced the
DynamicHandler()
method into the IDbSetting interface. - Could not load file or assembly 'RepoDb.PostgreSql.dll' #1040
- Fixed the issues when writing the records into the database via
System.DataTable
object using the BinaryBulkImport, when an Enum-based property is present. - Upgraded the
Microsoft.Data.SqlClient
packagev5.1.0
. - Upgraded the
Npgsql
package tov7.0.2
. - Upgraded the
MySql.Data
package to8.0.32.1
. - Upgraded the
MySqlConnector
package to2.2.5
. - Upgraded the
Microsoft.Data.Sqlite
package tov7.0.4
.
Credits 🙇🏼♂️
Thank you to all the contributors/pull-requestors and collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc).
- @ngardon - implemented the feature
SkipQuery
(#377) - @SergerGood
- @himel951
- @dylanvdmerwe
- @Garios
- @paaaz
- @monoculture
- @Mewriick
- @arakis
- @pmarflee
For the other unlisted collaborators who made the contributions (i.e.: posting and answering comments) on the User Stories, and also to those who directly collaborated with our communities (in many ways), we are also extending our thanks to you.
Please continue to do so and many thanks!
Overall Tracing Refactoring, Version Alignment, GlobalConfigurations, Trace/Cache Async, Bug Fixes, Enhancements, Request
This release has included the long-awaited new Tracing capabilities, enablement of the Async Caching, Global Configurations and many more (i.e.: Bug Fixes, Enhancements, Community PRs and Requests).
RepoDb (v1.13.0) 🚀
Highlights
- Enhancement: Re-implement the Tracing overall implementations - Addressing the Simplicity and Extensibility #941
Breaking
- Enhancement: Simplified the constructors of the QueryField and DirectionalQueryField classes.
- Enhancement: Simplified the constructors of the extended query field objects FunctionalQueryField, LeftQueryField, RightQueryField, LeftTrimQueryField, RightTrimQueryField, LengthQueryField, LenQueryField, LowerQueryField, UpperQueryField, TrimQueryField classes.
- Enhancement: Removed the Field argument from all the query field objects.
- Enhancement: Removed the
Type
property from the DirectionalQueryField object. - Enhancement: Enable IDbDataParameter as query arguments #1060
Non-Breaking
- Bug: No coercion operator is defined between types
System.TimeSpan
andSystem.Int64
. #1033 - Bug: Type with custom mapping used in an array is not mapped to specific
DBType
#1053 - Bug: DbRepository's Truncate operations do not handle transactions #1041
- Bug: Sort Columns are no longer being verified #1049
- Enhancement: Explicit selection of the datatype for query parameters #1052
- Enhancement: Added the DbType as property to both the Parameter and QueryField classes.
- Enhancement: Removed the type filter (of class) in the ExecuteQueryMultiple operation.
- Enhancement: Remove the QueryBuilder on the IStatementBuilder interface methods #1055
- How to use ExecuteQueryMultiple cache? #1044
- Enhancement: Enable the Anonymous Types and Query Objects on QueryMultiple #1062
- Enhancement: Add the
fields
andcacheItemExpiration
as arguments to the QueryMultiple operation #1071 - Enhancement: Enable the TableName invocation in the QueryMultiple operations #1065
Enhancement: Enable the dynamic result from the QueryMultiple operations #1070 - Enhancement: Support the Type level assignment of PropertyValueAttribute #1059
- Enhancement: Removed the
includeMappings
argument from thePropertyInfo.GetPropertyValueAttributes()
, PropertyValueAttributeCache and PropertyValueAttributeResolver methods. - Enhancement: Introduced the PropertyValueAttributeTypeLevelResolver class.
- Enhancement: Obsoleted the PropertyValueAttributeResolver class and introduced the replacement class named PropertyValueAttributePropertyLevelResolver class.
- Request: Insert methods should return the PK regardless of if the PK was generated by the DB or not #1027
- Enhancement: TypeMapper for MSSQL (Udt and Spatial) #1023
- Enhancement: Introduce the
Async
methods to the ICache interface #1080 - Bug: QueryAsync interfering with PK #1046
- Question: How does one trace
Async
methods? #945 - Introduced the
NullToDbNull
method into the Converter class. - Enhancement: Add a PropertyHandlerOptions and ClassHandlerOptions class #1088
- Obsoleted the Converter.ConversionType property.
- Removed the Constant.MaxParametersCount property.
- Enhancement: Introduce the initialization within the library using an GloalConfigOptions class #1087
- Enhancement: Add a switch of which value to return (Identity/Primary) during the push operations (Insert, InsertAll, Merge and MergeAll). #1086
- Enhancement: Add a switch of which value to return (Identity/Primary) during the push operations (Insert, InsertAll, Merge and MergeAll). #1086 - (Updates to both PostgreSQL, MySQL, SQLite (System/Microsoft) extended libraries)
- Enum: writing to db fails, when global-option is automatic or db-field is primary-key #1100
- Enums: error when dbValue doesn't exist in Enum-Values #1099
- Upgraded the
Microsoft.Data.SqlClient
package tov5.0.1
.
Credits 🙇🏼♂️
Thank you to all the collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc).
- @cajuncoding
- @karli1
- @iturribeitia
- @stefandevo
- @Swoorup
- @fla91fr
- @jgranger36
- @xperiandri
- @databrecht
- @Trobeloo
- @Garios
- @w5l
- @Simon-Carr
- @zetomatoz
- @seongguk2i
- @dendism
- @Grauenwolf
- @rafek1241
- @Vinko90
- @JanBrandenburger
For the other unlisted collaborators who made the contributions (i.e.: posting and answering comments) on the User Stories, and also to those who directly collaborated with our communities (in many ways), we are also extending our thanks to you.
Please continue to do so and many thanks!
SQLite Separation, Postgre BulkOperations, Bug Fixes, Enhancements, Request, Upgrades
This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Credits
Thank you to our contributors and to all the collaborators.
Contributors
- @SergerGood - Sergei Khlebnikov - special thanks to you man 🚀 🙇🏼♂️
Collaborators
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
- @Dean-NC
- @nandaccio
- @mediasystems-ch
- @seongguk2i
- @marciogoularte
- @Bygdrift
- @pmarflee
- @evilz
- @FlayLson
- @cajuncoding
- @fercala
- @adanek
- @MichalJana
- @mholzmann-medi
- @chengh42
- @stefandevo
- @tmyllymaki
- @biapar
- @richardy706
- @micycle1
- @tehmufifnman
- @shanoaice
- @Garios
- @dagmanolis
- @grofit
Please continue to do so and many thanks!
RepoDb (v1.12.10)
- Bug: the DeleteAll(T entities) method results in System.InvalidOperationException errors #1011
- 实体继承基类的主键以及字段,无法在派生类中体现? #986
- MemoryCache: "Cannot update the item that is not yet expired." #1017
- Behavioral Change: When calling the MemoryCache.Add method, the existing cached item (if present) information will be updated by the latest and updated one.
- Bug: Dot in schema name #1015
- Deprecated the method
DataEntityExtension.GetSchema(string)
. Use theDataEntityExtension.GetSchema(string, IDbSetting)
instead. - Deprecated the method
DataEntityExtension.GetTableName(string)
. Use theDataEntityExtension.GetTableName(string, IDbSetting)
instead. - Deprecated the method
Type.GetImplementedInterfaces()
(extended method). Use theType.GetInterfaces()
instead. - Bug: PropertyHandler doesn't seem to work in F# #1021
- Bug: QueryField IN not working with multiple collections with varying sizes #1026
- Enhancement: Use the HashCode.Combine() method in all Hashcode generations. #1031
- Upgraded the
System.Linq.Async
package tov6.1.0
. - Compiler update to utilize the customized
DbParameterExtension
class to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown
. - Complimentary support to the Enum(s) for the
RepoDb.PostgreSql.BulkOperations
package. - Upgraded the
System.Linq.Async
package tov5.1.0
. - Upgraded the
Microsoft.Bcl.AsyncInterfaces
package tov6.0.0
. - (Additional Fixes) Bug: Exceptions are thrown when using a custom PropertyHandler and a Where Expression to process an Enum value (that has NULL or invalid Enum Id); the Get/Set is never invoked. #991
- Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Question: why to order by a field, it needs to be in the select? #963
- Bug: Exceptions are thrown when using a custom PropertyHandler and a Where Expression to process an Enum value (that has NULL or invalid Enum Id); the Get/Set is never invoked. #991
- Supported the
.NET v6.0
. - Initial support to PostgreSQL bulk operations.
- Code refactoring specifically on the
QueryBuilders
.
RepoDb.SqlServer (v1.1.5)
- Bug: Dot in schema name #1015
- Referenced the
RepoDb
packagev1.12.10
. - Referenced the
Microsoft.Data.SqlClient
packagev4.0.1
. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Enhancement: Remove
System.Data.SqlClient
reference from RepoDB.SqlServer #857 - (BREAKING CHANGES) - Removed both the
MicrosoftSqlServerTypeMapAttribute
andSystemSqlServerTypeMapAttribute
attributes. Use the the SqlDbTypeAttribute attribute instead. - Supported the
.NET v6.0
.
RepoDb.SqlServer.BulkOperations (v1.1.6)
- Referenced the
RepoDb
packagev1.12.10
. - Referenced the
RepoDb.SqlServer
packagev1.1.5
. - Upgraded the
System.Linq.Async
package tov6.1.0
. - Added the
Microsoft.Bcl.AsyncInterfaces
(version6.0.0
). - Initial support to the
IAsyncEnumerable
interface. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references).
RepoDb.PostgreSql (v1.1.5)
- Bug: Dot in schema name #1015
- Referenced the
RepoDb
packagev1.12.10
. - Upgraded the
Npgsql
package tov6.0.3
. - Upgraded the
Npgsql
package. Used thev5.0.11
for FTMnetcoreapp2.0
andv6.0.0
for FTMnet5.0
andnet6.0
. - Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0
. - Complimentary support to the Enum(s) for the
RepoDb.PostgreSql.BulkOperations
package. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Added the customized
DbParameterExtension
class to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown
. - Upgraded the
Npgsql
package tov6.0.1
. - Initial support to PostgreSQL bulk operations.
- Enhancement: Introduced the
ClientTypeToNpgsqlDbTypeResolver
class. - Enhancement: Introduced the
PostgreSqlDbTypeNameToNpgsqlDbTypeResolver
class.
RepoDb.PostgreSql.BulkOperations (v0.0.9)
- Bug: Dot in schema name #1015
- Referenced the
RepoDb
packagev1.12.10
. - Upgraded the
Npgsql
package. Used thev5.0.11
for FTMnetcoreapp2.0
andv6.0.0
for FTMnet5.0
andnet6.0
. - Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0
. - Complimentary support to the Enum(s) for the
RepoDb.PostgreSql.BulkOperations
package. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Added the customized
DbParameterExtension
class to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown
. - Upgraded the
Npgsql
package tov6.0.1
. - Initial support to PostgreSQL bulk operations.
- Enhancement: Introduced the
ClientTypeToNpgsqlDbTypeResolver
class. - Enhancement: Introduced the
PostgreSqlDbTypeNameToNpgsqlDbTypeResolver
class.
RepoDb.Sqlite.Microsoft (v1.0.1)
- Initial release.
- Referenced the
RepoDb
packagev1.12.10
. - Upgraded the
Microsoft.Data.Sqlite
tov6.0.2
. - Bug: Dot in schema name #1015- Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0
. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Microsoft.Data.Sqlite Version #995
- Upgraded the
Microsoft.Data.Sqlite
tov6.0.1
. - Added the 6.0 to the target frameworks.
- Request: Separate the SqLite Nuget Library into 2 #880.
RepoDb.SQLite.System (v1.0.0)
- Initial release.
- Referenced the
RepoDb
packagev1.12.10
. - Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0
. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Bug: Dot in schema name #1015
- Added the 6.0 to the target frameworks.
- Upgraded the
System.Data.SQLite.Core
package tov1.0.115.5
. - Request: Separate the SqLite Nuget Library into 2 #880.
RepoDb.MySql (v1.1.6)
- Upgraded the
MySql.Data
package to8.0.28
. - Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0
. - Added the
Title
andPackageTags
tags in the Nuget Package (.nuspec references). - Bug: Dot in schema name #1015
- Referenced the
RepoDb
packagev1.12.10
.
RepoDb.MySqlConnector (v1.1.5)
PropertyValueAttributes, Bug Fixes, Enhancements, Requests, Upgrades
This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Credits
Thank you to our contributors and to all the collaborators.
Contributors
-
@SergerGood - Sergei Khlebnikov - special thanks to you man 🚀 🙇🏼♂️
- Added benchmarks for Linq2Db #804
- Small optimizations #805
- using the is pattern expression #806
- TextAttibute was deleted #809
- AutomaticConvert == Convert.ChangeType #810
- upgrade packages #811
- Support net5 #815
- using new language features #817
- fixed some allocations #818
- QueryBuilder work with StringBuilder #819
- Fixed tests after change QueryBuilder #820
- Collections used for contains are replaced with HashSet #827
- Using strings for Concat #828
- GetHashCode without Sting.Concat #829
- Upgrade packages #830
- Unnecessary allocation #833
- Async enumerable #834
- Removed unnecessary calls the methode GetHashCode #835
- replace Activator.CreateInstance() with new T() #841
- Using Comparer for OrderBy #842
- More optimal use of method String.IndexOf #843
- More optimal use of methods String.StartsWith and String.EndsWith #844
- More optimal use of method String.Contains #845
- Use readonly struct for less allocations #846
- Typed mappers #848
- Upgrade packages #852
- GetHashCode for own type #853
-
- [WIP] Postgres enum <-> .Net enum #855
Collaborators
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
- @AngelMunoz
- @asleire
- @atresnjo
- @davidrot
- @baffourt
- @casperOne
- @codeweb
- @Dean-NC
- @gloriousjob
- @JanBrandenburger-LSF
- @JordanMarr
- @jvopalensky
- @Kaizer69
- @kiwidude68
- @LucaGabi
- @MatejMarecek
- @mslancashire
- @mhesham93
- @nandaccio
- @seongguk2i
- @Simon-Carr
- @SpaceOgre
- @veenroid
- @vilijatr
- @VincenzoCarlino
- @Xhanti
Please continue to do so and many thanks!
RepoDB (v1.12.8)
- NETSTANDARD2.0: Added the
Microsoft.Bcl.AsyncInterfaces v5.0.0
package. - NETSTANDARD2.0: Added the
Microsoft.Bcl.HashCode v1.1.1
package. - Added the
System.Linq.Async v5.0.0
package. - Added the
net5.0
as part of the target frameworks. - Bug: Dynamic insertion via
Dictionary<string, object>
is failing #791. - Bug:
IsDictionaryStringObject()
does not work in F# #789. - Bug: An identify field parameter issue is being thrown when invoking the MergeAll operation dynamically #849.
- Bug: A SQL syntax issue is being thrown if the BulkMerge is called with multiple qualifiers #850.
- Bug: Output parameters of type varchar gives
Size
exception #836. - Bug: Calls to any operation throws an object
NullReferenceException
if not properly initialized. #861. - Bug: Different lambdas in QueryAsync generate the same SQL expression (cache problem) #782.
- (Rebuilt Only) Bug: OrderField ignores MapAttribute #769
- Bug: OrderField ignores MapAttribute #769
- Bug: Querying by string field fails in VB .Net #767
- Bug: Insert exception since 1.1.3 with mysql... #765
- Enhancement: Added the
Size
property into the DirectionalQueryField object. - Enhancement: Exposed the
Type
property of the DirectionalQueryField object. - Enhancement: Added the
NULL
comparer as part of the qualifiers on the MergeAll, UpdateAll, BulkMerge and BulkUpdate operations. - Enhancement: Made the QueryGroup.GetString() method virtual.
- Enhancement: Added the QueryField.GetString() method (as virtual).
- Enhancement: Make the DbRepository.CreateConnection() method virtual. #856
- Enhancement: Made the
CreateConnection()
method of the BaseRepository class virtual. - Enhancement: Enhancement: Add an additional property on the DbField class that handles the DB Provider. #890
- Enhancement: Added the PropertyValueAttribute attribute class.
- Enhancement: Create a base class for the Type Map attributes (NpgsqlTypeMapAttribute, MySqlTypeMapAttribute, MicrosoftSqlServerTypeMapAttribute and SystemSqlServerTypeMapAttribute) #873.
- Enhancement: Add the attribute-based parameter setters for the
DbParameter
object. #886 - Enhancement: Add a mapper for PropertyValueAttribute #887
- Enhancement: Added the DbTypeAttribute attribute.
- Enhancement: Added the DirectionAttribute attribute.
- Enhancement: Added the IsNullableAttribute attribute.
- Enhancement: Added the NameAttribute attribute.
- Enhancement: Added the PrecisionAttribute attribute.
- Enhancement: Added the ScaleAttribute attribute.
- Enhancement: Added the SizeAttribute attribute.
- Enhancement: Added the PropertyValueAttributeMapper class.
- Enhancement: Added the PropertyValueAttributeCache class.
- Enhancement: Added the PropertyValueAttributeResolver class.
- Enhancement: Added the
PropertyValueAttributes()
method on the FluentMapper class. - Enhancement: Introduce the formatters for the QueryField class 899)
RepoDB.SqlServer (v1.1.4)
- Added the
net5.0
as part of the target frameworks. - Upgraded the
RepoDb
package tov1.12.8-beta5
. - Upgraded the
System.Data.SqlClient
package tov4.8.3
. - Deprecated both the MicrosoftSqlServerTypeMapAttribute and SystemSqlServerTypeMapAttribute attributes.
- Added the CompareInfoAttribute attribute. #884
- Added the ForceColumnEncryptionAttribute attribute. #884
- Added the LocaleIdAttribute attribute. #884
- Added the OffsetAttribute attribute. #884
- Added the SqlDbTypeAttribute attribute. #884
- Added the TypeNameAttribute attribute. #884
- Added the UdtTypeNameAttribute attribute. #884
- Added the XmlSchemaCollectionDatabaseAttribute attribute. #884
- Added the XmlSchemaCollectionNameAttribute attribute. #884
- Added the XmlSchemaCollectionOwningSchemaAttribute attribute. #884
- Enhancement: Add the attribute-based parameter setters for the
DbParameter
object. #886
RepoDB.SqlServer.BulkOperations (v1.1.4)
- Bug: BulkMergeAsync with multiple qualifiers #864
- Added the `...
Bug Fixes, Enhancements, Requests, Upgrades
This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Credits
Thank you to our contributors and to all the collaborators.
Contributors
- @tommasobertoni - Bugfix: TDbConnection handling #757
- @fredliex - for the following PRs
- @SimonCropp - for these awesome code refactoring.
- try fix null reference during fetch #749
- Create RepoDb.All.sln 747
- remove some redundant null checks 745
- some redundant usings 744
- fix some spelling 743
- page and rowsPerBatch can never be null [741]#741)
- remove some un used variables 740
- use some null Propagation 739
- fix broken Xml docs 734
- fix 2 more null ref querybuilders 733
- unnecessary delegate 731
- spelling 730
- minor ToUpper perf tweak 729
- simplify some ternaries 728
- remove some redundant constructors 727
- inline some outs 726
- pass some cancellationTokens 725
- use some discards 724
- merge type checks 723
- add some null coalescing 722
- no point concating single strings 721
- remove redundant filteredDbFields (might be a Bug?) 720
- remove redundant UtcNow 719
- remove some redundant equality checks 718
- fix more null refs 717
- enable c# 9 716
- add props file for shared settings 715
- fix queryBuilder NullRefException 714
- redundant tostring 713
- add some missing param names to arg exceptions 695
- remove some async state machines 694
- Fixx some Spelling 693
Collaborators
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
- @vmohan074
- @DarkRoku12
- @chopswil15
- @keithn
- @TimCorwin
- @kbilsted
- @mchinchilla
- @tommasobertoni
- @tmyllymaki
- @simmohall
- @NicoKno
- @myalo
- @SpaceOgre
- @spiesserheim
- @xracer007
Please continue to do so and many thanks!
RepoDB (v1.12.7)
- Enhancement: Add a
Reset()
method into the Parameter object. #709 - Enhancement: Add a method
DbParameter
into the QueryField object. #711 - Enhancement: Revisits the Immutable Classes Instantiation #753
- Bug: Extract function throws exception when using ExecuteQueryMultiple #761
- Bug: RepoDb.SqlServer Enum picking up 2 types when upgraded from 1.1.1 -> 1.1.2 #736
- Bug: null reference during fetch #748
RepoDB.SqlServer (v1.1.3)
- Referenced the version RepoDb.Core (v1.12.7).
RepoDB.SqlServer.BulkOperations (v1.1.4)
- Referenced the version RepoDb.Core (v1.12.7).
- Referenced the version RepoDb.SqlServer (v1.1.3).
RepoDB.SqlServer.BulkOperations (v1.1.3)
- Bug: Identity Values not set correctly with Bulk Insert from Sql Server due to Incorrect Sorting of data. #691
- The
hints
argument is removed from the BulkInsert viaDbDataReader
. - Added the
WriteToServer
method to cater the ordered resultset of the__RepoDb_OrderColumn
custom column.
RepoDB.PostgreSql (v1.1.3)
- Referenced the version RepoDb.Core (v1.12.7).
- Referenced the version Npgsql (v5.0.2).
RepoDB.SqLite (v1.1.3)
- Referenced the version RepoDb.Core (v1.12.7).
- Referenced the version Microsoft.Data.Sqlite (v5.0.2).
RepoDB.MySql (v1.1.4)
- Referenced the version RepoDb.Core (v1.12.7).
- Referenced the version MySql.Data (v5.0.2).
RepoDB.MySqlConnector (v1.1.3)
- Referenced the version RepoDb.Core (v1.12.7).
Complete Support to Dynamics, Bug Fixes and Enhancements
This release has included the complete support to the dynamic objects (i.e.: ExpandoObject
and IDictionary<string, object>
).
Credits
Thank you to our contributors and to all the collaborators.
Contributors
- @fredliex - for issuing the following PRs
- @SergerGood - for issuing the following PRs. Btw, thanks for being a frequent PR contributor.
- @Swoorup - for issuing a PR #619
- @SpaceOgre - for issuing a PR #678
- @stefandevo - for issuing a PR #642 - Bug: Incorrect syntax near the keyword 'WITH' BulkMergeAsync
- @bobduncan - for issuing a PR #649 - #645 Correctly passed through tableName parameter in the DeleteAll
Collaborators
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
Please continue to do so and many thanks!
RepoDb (Core) (v1.12.5)
- Fixed the related issues found at model-based operation ExecuteQuery (almost related to #666)
- Adhoc: Remove the Initialize method from the DataEntityDataReader. #673 - this is a breaking changes
- Bug: Query failed when field mapping used on FSharp records. #662
- Bug: FluentMapper is not working with Abstract Properties #666
- Bug: BulkInsert with mappings #668
- Question: IPropertyHandler for
Dictionary<string, string>
#647 - Upgraded the
Microsoft.Data.SqlClient
tov2.1.0
. - Upgraded the
System.ComponentModel.Annotations
tov5.0.0
. - Request: Introduce optional caching to ExecuteScalar methods. #648
- Enhancement: Add the non-parameterized Truncate operation. #652
- Request: Do not crash if on empty enumerable on bulk operation #635.
- Bug: Exception is being thrown for the Type level PropertyHandler for Dynamic Insertion #628.
- Added a validation to ensure the type of the
TPropertyHandler
has implemented the IPropertyHandler interface when calling theAdd()
method of the PropertyHandlerCache object. - Enhancement: Add the dynamic ExecuteQueryMultiple method in the DbRepository #630
- Possible bug - Enum with Flag attribute is not correctly handled #624
- [Core] Support
ExpandoObject
in Insert viaTableName
. #234 - [Core] Support
ExpandoObject
in Merge viaTableName
. #238 - [Core] Support
ExpandoObject
in Update viaTableName
. #236 - [Core] Support
ExpandoObject
in InsertAll viaTableName
. #235 - [Core] Support
ExpandoObject
in MergeAll viaTableName
. #239 - [Core] Support
ExpandoObject
in UpdateAll viaTableName
. #237 - Introduce the support of Dynamic and ExpandoObject in BulkInsert. #243
- Enhancement: Support
ExpandoObject
in BulkInsert #610 - Enhancement: Support
ExpandoObject
in BulkMerge #611 - Enhancement: Support
ExpandoObject
in BulkUpdate #612 - Enhancement: Support
ExpandoObject
in BulkDelete #613
RepoDb.SqlServer.BulkOperations (v1.1.2)
- Bug: BulkInsert with mappings #668
- Bug: System.Data.SqlClient.SqlException: 'Column name 'ID' does not exist in the target table or view.' #651
- Refactor the internal method implementations to only utilize the base methods for both the MDS and SDS method calls.
- Reverted the changes to the #635.
- Bug: Incorrect syntax near the keyword
WITH
BulkMergeAsync #640 - Request: Do not crash if on empty enumerable on bulk operation #635
- Referenced the version RepoDb.Core (v1.12.5-beta2).
Complete Support to Cancellation Token
This release as supported the CancellationToken as a response to #343. It affects all the supported different DB Provider packages.
Thank you @SergerGood for opening and pushing this feature for us to work with.
Stable 1.12.X Version - Fixes
This release is the more stable and more mature than the original v1.12.0. Various issues and requests has been pushed on the last minor releases.
RepoDB (v1.12.3)
- Bug: Behavior change from previous versions prior v1.12.0 #602
- Bug: Async fetch operations are not using the
DbDataReader.ReadAsync
method (in v1.12.0 to v1.12.2) #601
RepoDB (v1.12.2)
- Bug: A
NullReferenceException
Is Thrown for NULL Query Expression #600
RepoDB (v1.12.1)
- Enhancement: New Compiler Possible Collision Problem - Refactor the DbDataReader GetHashCode() Generator #597
- Bug: Unable to share POCOs between different database providers (Sqlite and Postgres) [#595](https://github.com/mikependon/RepoDb/issues/595]
Compiler Collision Problem
RepoDB (v1.12.1)
- Enhancement: New Compiler Possible Collision Problem - Refactor the DbDataReader GetHashCode() Generator #597
- Bug: Unable to share POCOs between different database providers (Sqlite and Postgres) [#595](https://github.com/mikependon/RepoDb/issues/595]
Credits
F# Support, Class Handler, Enhanced Compiler, Many More
Release Notes
The version 1.12.0 / v1.1.0 (extensions) are one of the biggest release of RepoDB. It contains the various updates (i.e. Features, Capabilities, and Request from the Community).
- Complete Support to F#
- Class Handler
- Enhanced Compiler
- Anonymous Type / ExpandoObject / IDictionary<string, object>
- Immutable Classes
- Table-Based Fluent Calls
- Complete Exposure of the
fields
argument - Support to .NET CLR Typed Result Execution
- Support to Table-Valued Parameters (TVP)
Credits
Thank you to our contributors and to all the collaborators.
Contributors
- @mertkokusen - for issuing a PR for #502
- @SergerGood - for adding the RepoDb.Benchmarks
Collaborators
- @isaacabraham and @AngelMunoz - for the frequent collaborations in relation to F#
- @Swoorup, @alper-atay, @BieleckiLtd - for actively collaborating
- @KSemenenko, @bcssov, @chaloman, @marcin-brzozowski, @palenshus, @nicko-franco, @asleire, @kampilan, @snalesso, @kbilsted, @rapthi, @Kodestuen, @fenilrathod, @karuakun @dalebrubaker - for filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc.
RepoDB (Core) (v1.12.0)
- Complete support to F# programming language as requested by the F# Community. Thank you to Isaac Abraham and Angel Munoz for being so collaborative.
- Request: F# - Consider the Anonymous Types in the Query and QueryAll operation #536.
- Bug: QueryAsync with empty QueryField list throws SQL exception #498.
- Bug: IPropertyHandler not being called #514
- Bug: Property mapping fails with Turkish locale #502
- Bug: Non-query statements are not taking into account SQL Server table hints #533.
- Bug: Async methods use synchronous calls #589
- Feature: Introduce the ClassHandler Support #524
- Feature: Support to Enumerable Scalar Values #538 - NEW
- Request: Completely expose the
fields
argument in the BatchQuery, Query, Insert, Merge and Update operations (and all its Batch operations). #523 - Request: Add caching for ExecuteQuery and ExecuteQuery<TEntity> #522
- Request: Adds an overloaded method for QueryAll<TEntity> operation that takes the
tableName
parameter. #521 - BREAKING - Request: Add caching for ExecuteQuery and ExecuteQuery<TEntity> #522
- Request: Add the 'isMoveToNextResult' argument to the QueryMultipleExtractor (Extract and Scalar) methods #591
- Request: Support the Immutable Entities #465
- Question: Question on how to properly configure type mapping for FSharp Option types #483
- Question: Specific Columns in
Query<TEntity>
#545 - Enhancement: Use the
Identity
field if thePrimary
field is not available during the Query, Delete and Update operations. - Refactoring: Enhance the coding in the Core Compiler #479. BREAKING
- Enhancement: Complete support to the Fluent named-based operation #499.
- Enhancement: Replaces the usage of
IsNullOrEmpty
toIsNullOrWhiteSpace
. - Enhancement: Replaces the usage of
ToLower()
toToLowerInvariant()
. - Enhancement: Replaces the usage of string equality to
string.Equals(value1, value2, StringComparer.OrdinalIgnoreCase)
. - Enhancement: Added the
Async
methods in the compiler. #482 #477 - Enhancement: Add the dynamic ExecuteQuery method in the DbRepository. #517
- Enhancement: Renamed the
whereOrPrimaryKey
argument towhat
to extend the support to both (data entity object, dynamic/object expression, primary key and identity key), to further support theF#
community. BREAKING - Enhancement: Updated the QueryGroup.Parse() method to be an argument-typed-based method.
- Enhancement: Refactored and optimized the
Parse
method of the QueryField and QueryGroup objects. - Enhancement: Refactor the Table-Based Calls to return
IEnumerable<ExpandoObject>
instead ofIEnumerable<dynamics>
. #540 - Enhancement: Consider supporting the execution of the TVP in SQL Server. #566
- Enhancement: Support for returning
IDictionary<string, object>
instead of ExpandoObject. #537 - Enhancement: Re-assess if the
IsAssignableFrom
can be used over the customizedIsInterfacedTo
. #469 - Enhancement: Handle the Exception Handling of the Serialization/Deserialization process of the ClassHandler that is connected to a different Data Entity #539
- Refactoring: Make all the
cacheItemExpiration
arguments nullable. BREAKING - Refactoring: Make the BaseRepository and DbRepository objects
CacheItemExpiration
property nullable. - Refactoring: Make the CacheItem object
CacheItemExpiration
property nullable. - Test: Added the Integration Tests for the
NonKeyedTable
. - Integration Tests: Added more Integration Tests for the
DbType
Map Attribute (includes SQL Server, PostgreSQL and MySQL). - Added the
KeyFieldNotFoundException
,MissingQualifierFieldsException
and theIdentityFieldNotFoundException
. - Added the
<TEntity>(TableName)
methods to the BatchQuery operation. - Added the
<TEntity>(TableName)
methods to the Query and QueryAll operations. - Added the
<TEntity>(TableName)
methods to the Delete and DeleteAll operations. - Added the
<TEntity>(TableName)
methods to the Insert and InsertAll operations. - Added the
<TEntity>(TableName)
methods to the Merge and MergeAll operations. - Added the
<TEntity>(TableName)
methods to the Update and UpdateAll operations. - Added the
<TEntity, TResult>
methods to the Average and AverageAll operations. - Added the
<TEntity, TResult>
methods to the Max and MaxAll operations. - Added the
<TEntity, TResult>
methods to the Min and MinAll operations. - Added the
<TEntity, TResult>
methods to the Sum and SumAll operations. - Added the execution context provider internal classes for the Insert, Merge, Update, internal class for the InsertAll, MergeAll and UpdateAlloperations.
RepoDb.SqlServer (v1.1.0)
- Complete support to F# programming language as requested by the F# Community. Thank you to Isaac Abraham and Angel Munoz for being so collaborative.
- Breaking: Introduced the
fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, [Merge](https://...