Releases: mikependon/RepoDB
Release list
RepoDB v1.14.0 - Support to .NET 8, .NET 9, .NET 10 | Community Updates | PostgreSQL Bulk Operations Fixes
This release has built the last 2.5 years changes to the library. Also, it now supports the .NET 8, .NET 9 and .NET 10. We have removed the support to .NET 6 and .NET 7 respectively.
In addition, we have introduces native PostgreSQL enum type support for bulk operations, a new DataTypeName property for explicit type mapping, a complete GitHub Actions CI/CD overhaul with reusable release pipelines, and refreshed documentation across all packages.
RepoDb.PostgreSql.BulkOperations (v1.14.0)
- Added
DataTypeNameproperty toNpgsqlBulkInsertMapItem— enables explicit PostgreSQL type name mapping (e.g. native enum types) as a third constructor overload. When set,DataTypeNametakes precedence overNpgsqlDbType. - Updated
Compiler.csto resolveNpgsqlBinaryImporter.Write/WriteAsyncoverloads that accept astring dataTypeNamewhenDataTypeNameis set — covers both sync and async paths. - Fixed all 64
EnumTestintegration test failures —BinaryBulkInsert,BinaryBulkDelete,BinaryBulkMerge, andBinaryBulkUpdatenow correctly handle .NET enums mapped to native PostgreSQL enum types viaNpgsqlDataSource.MapEnum(). - Professionalized the Enum Types section in the README with step-by-step usage instructions and linked API references.
RepoDb.Core (v1.14.0)
- Refreshed README — tightened prose, added a Why RepoDB? collapsible section, added a Contributors avatar section (via contrib.rocks), and added a Downloads badge column to the packages table.
All Packages
- Refreshed README files across all 9 packages — concise one-liner descriptions, cleaner installation instructions, and streamlined community links.
CI/CD
- Renamed
_base.yml→build-base.yml; all build workflow references updated. - Added
release-base.yml— reusableworkflow_calltemplate for NuGet publishing (restore → build → pack → NuGet login → push). - Added individual
release-*.ymlworkflows for all 9 packages (repodb,sqlsvr,mysql,mysqlconnector,pgsql,pgsql-bulk,sqlsvr-bulk,sqlite-system,sqlite-microsoft). - Upgraded
actions/checkout,actions/setup-dotnet,actions/upload-artifactfromv4→v5andNuGet/loginfromv1→v2to resolve the Node.js 20 deprecation warnings.
Credits
Thank you to all the contributors/pull-requestors and collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc).
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!
What's Changed
- Convert enum to type based on DbType for PostgreSQL by @PauloHMattos in #1152
- Mitigate thread race conditions & hashcode collision risks by @alexn-tinwell in #1153
- Implemented auto-conversion from
DateTimetoDateOnlyby @xperiandri in #1154 - Issue 1159 - Bug: Exception "A transaction is already in progress; nested/concurrent transactions aren't supported." when using TransactionScope with PostgreSQL bulk operations #1159 by @RodolfoFerreira in #1160
- Fix race condition when getting fields by retrying on a new connection by @xperiandri in #1162
- Support net8.0 and upgrade packages by @SergerGood in #1164
- Repodb optimized batch statements by @mikependon in #1167
- Generic Attribute for ClassHandler by @SergerGood in #1169
- Issue 1159 - Bug: Exception "A transaction is already in progress; nested/concurrent transactions aren't supported." when using explicit transaction with PostgreSQL bulk operations #1159 by @RodolfoFerreira in #1170
- Honour cache expiration from ctor if not passed explicitly by @AndrewNikolin in #1180
- Fixed bug with keep identity flag in BulkInsert and BulkMerge operations by @dendism in #1182
- Add full DateOnly support by @rhuijben in #1184
- Fix all unit and integration tests. by @rhuijben in #1194
- Support int and short in SetEntityIdentities for PostGres by @andtii in #1197
- Updates GetCommandText() to use pg_index catalog in PostgreSqlDbHelper by @RodolfoFerreira in #1209
- Address CVE-2023-36414 and CVE-2024-0056 by @lgp1985 in #1207
- Bump Npgsql from 7.0.1 to 8.0.3 in /RepoDb.PostgreSql/RepoDb.PostgreSql.IntegrationTests by @dependabot[bot] in #1175
- Bump Npgsql from 7.0.6 to 8.0.3 in /RepoDb.Benchmarks/RepoDb.Benchmarks.PostgreSql by @dependabot[bot] in #1177
- Bump NHibernate from 5.4.6 to 5.4.9 in /RepoDb.Benchmarks/RepoDb.Benchmarks.PostgreSql by @dependabot[bot] in #1179
- Fix duplicate type check for StaticType.Byte in ClientTypeToDbTypeResolver by @prjanitor in #1213
- Refactoring Net10 by @mikependon in #1215
- Bump Npgsql from 7.0.6 to 7.0.7 by @dependabot[bot] in #1216
New Contributors
- @PauloHMattos made their first contribution in #1152
- @alexn-tinwell made their first contribution in #1153
- @RodolfoFerreira made their first contribution in #1160
- @AndrewNikolin made their first contribution in #1180
- @dendism made their first contribution in #1182
- @rhuijben made their first contribution in #1184
- @andtii made their first contribution in #1197
- @lgp1985 made their first contribution in #1207
- @dependabot[bot] made their first contribution in #1175
- @prjanitor made their first contribution in #1213
Full Changelog: v1.13.1...v1.14.0
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.DataTableobject using the BinaryBulkImport, when an Enum-based property is present. - Upgraded the
Microsoft.Data.SqlClientpackagev5.1.0. - Upgraded the
Npgsqlpackage tov7.0.2. - Upgraded the
MySql.Datapackage to8.0.32.1. - Upgraded the
MySqlConnectorpackage to2.2.5. - Upgraded the
Microsoft.Data.Sqlitepackage 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
Typeproperty from the DirectionalQueryField object. - Enhancement: Enable IDbDataParameter as query arguments #1060
Non-Breaking
- Bug: No coercion operator is defined between types
System.TimeSpanandSystem.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
fieldsandcacheItemExpirationas 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
includeMappingsargument 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
Asyncmethods to the ICache interface #1080 - Bug: QueryAsync interfering with PK #1046
- Question: How does one trace
Asyncmethods? #945 - Introduced the
NullToDbNullmethod 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.SqlClientpackage 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.Asyncpackage tov6.1.0. - Compiler update to utilize the customized
DbParameterExtensionclass to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown. - Complimentary support to the Enum(s) for the
RepoDb.PostgreSql.BulkOperationspackage. - Upgraded the
System.Linq.Asyncpackage tov5.1.0. - Upgraded the
Microsoft.Bcl.AsyncInterfacespackage 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
TitleandPackageTagstags 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
RepoDbpackagev1.12.10. - Referenced the
Microsoft.Data.SqlClientpackagev4.0.1. - Added the
TitleandPackageTagstags in the Nuget Package (.nuspec references). - Enhancement: Remove
System.Data.SqlClientreference from RepoDB.SqlServer #857 - (BREAKING CHANGES) - Removed both the
MicrosoftSqlServerTypeMapAttributeandSystemSqlServerTypeMapAttributeattributes. Use the the SqlDbTypeAttribute attribute instead. - Supported the
.NET v6.0.
RepoDb.SqlServer.BulkOperations (v1.1.6)
- Referenced the
RepoDbpackagev1.12.10. - Referenced the
RepoDb.SqlServerpackagev1.1.5. - Upgraded the
System.Linq.Asyncpackage tov6.1.0. - Added the
Microsoft.Bcl.AsyncInterfaces(version6.0.0). - Initial support to the
IAsyncEnumerableinterface. - Added the
TitleandPackageTagstags in the Nuget Package (.nuspec references).
RepoDb.PostgreSql (v1.1.5)
- Bug: Dot in schema name #1015
- Referenced the
RepoDbpackagev1.12.10. - Upgraded the
Npgsqlpackage tov6.0.3. - Upgraded the
Npgsqlpackage. Used thev5.0.11for FTMnetcoreapp2.0andv6.0.0for FTMnet5.0andnet6.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.BulkOperationspackage. - Added the
TitleandPackageTagstags in the Nuget Package (.nuspec references). - Added the customized
DbParameterExtensionclass to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown. - Upgraded the
Npgsqlpackage tov6.0.1. - Initial support to PostgreSQL bulk operations.
- Enhancement: Introduced the
ClientTypeToNpgsqlDbTypeResolverclass. - Enhancement: Introduced the
PostgreSqlDbTypeNameToNpgsqlDbTypeResolverclass.
RepoDb.PostgreSql.BulkOperations (v0.0.9)
- Bug: Dot in schema name #1015
- Referenced the
RepoDbpackagev1.12.10. - Upgraded the
Npgsqlpackage. Used thev5.0.11for FTMnetcoreapp2.0andv6.0.0for FTMnet5.0andnet6.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.BulkOperationspackage. - Added the
TitleandPackageTagstags in the Nuget Package (.nuspec references). - Added the customized
DbParameterExtensionclass to compliment the compiler's needs for theNpgsqlParameter.NpgsqlDbType.Unknown. - Upgraded the
Npgsqlpackage tov6.0.1. - Initial support to PostgreSQL bulk operations.
- Enhancement: Introduced the
ClientTypeToNpgsqlDbTypeResolverclass. - Enhancement: Introduced the
PostgreSqlDbTypeNameToNpgsqlDbTypeResolverclass.
RepoDb.Sqlite.Microsoft (v1.0.1)
- Initial release.
- Referenced the
RepoDbpackagev1.12.10. - Upgraded the
Microsoft.Data.Sqlitetov6.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
TitleandPackageTagstags in the Nuget Package (.nuspec references). - Microsoft.Data.Sqlite Version #995
- Upgraded the
Microsoft.Data.Sqlitetov6.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
RepoDbpackagev1.12.10. - Question: why to order by a field, it needs to be in the select? #963
- Supported the
.NET v6.0. - Added the
TitleandPackageTagstags 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.Corepackage tov1.0.115.5. - Request: Separate the SqLite Nuget Library into 2 #880.
RepoDb.MySql (v1.1.6)
- Upgraded the
MySql.Datapackage 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
TitleandPackageTagstags in the Nuget Package (.nuspec references). - Bug: Dot in schema name #1015
- Referenced the
RepoDbpackagev1.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.0package. - NETSTANDARD2.0: Added the
Microsoft.Bcl.HashCode v1.1.1package. - Added the
System.Linq.Async v5.0.0package. - Added the
net5.0as 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
Sizeexception #836. - Bug: Calls to any operation throws an object
NullReferenceExceptionif 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
Sizeproperty into the DirectionalQueryField object. - Enhancement: Exposed the
Typeproperty of the DirectionalQueryField object. - Enhancement: Added the
NULLcomparer 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
DbParameterobject. #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.0as part of the target frameworks. - Upgraded the
RepoDbpackage tov1.12.8-beta5. - Upgraded the
System.Data.SqlClientpackage 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
DbParameterobject. #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
DbParameterinto 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
hintsargument is removed from the BulkInsert viaDbDataReader. - Added the
WriteToServermethod to cater the ordered resultset of the__RepoDb_OrderColumncustom 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.SqlClienttov2.1.0. - Upgraded the
System.ComponentModel.Annotationstov5.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
TPropertyHandlerhas 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
ExpandoObjectin Insert viaTableName. #234 - [Core] Support
ExpandoObjectin Merge viaTableName. #238 - [Core] Support
ExpandoObjectin Update viaTableName. #236 - [Core] Support
ExpandoObjectin InsertAll viaTableName. #235 - [Core] Support
ExpandoObjectin MergeAll viaTableName. #239 - [Core] Support
ExpandoObjectin UpdateAll viaTableName. #237 - Introduce the support of Dynamic and ExpandoObject in BulkInsert. #243
- Enhancement: Support
ExpandoObjectin BulkInsert #610 - Enhancement: Support
ExpandoObjectin BulkMerge #611 - Enhancement: Support
ExpandoObjectin BulkUpdate #612 - Enhancement: Support
ExpandoObjectin 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
WITHBulkMergeAsync #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.ReadAsyncmethod (in v1.12.0 to v1.12.2) #601
RepoDB (v1.12.2)
- Bug: A
NullReferenceExceptionIs 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]