Skip to content

Commit 6d5eacc

Browse files
authored
Merge pull request #71 from LinqToDB4iSeries/v5.0.0
V5.0.0
2 parents 71147f3 + cc07cc5 commit 6d5eacc

File tree

165 files changed

+5117
-1705
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

165 files changed

+5117
-1705
lines changed

Build/linq2db.Default.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
22
<PropertyGroup>
3-
<Version>4.4.1</Version>
3+
<Version>5.0.0</Version>
44

55
<Description>LINQ to DB is a data access technology that provides a run-time infrastructure for managing relational data as objects. This package is a provider for DB2 on the IBM iSeries.</Description>
66
<Authors>Roy Chase, Nikos Sarris</Authors>

Build/linq2db.Providers.props

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,18 @@
99
<ItemGroup>
1010
<PackageReference Include="Npgsql" />
1111
<PackageReference Include="System.Data.SQLite.Core" />
12-
<PackageReference Include="MySql.Data" Aliases="MySqlData" />
13-
<PackageReference Include="MySqlConnector" Aliases="MySqlConnector" />
12+
<!--<PackageReference Include="MySql.Data" Aliases="MySqlData" />-->
13+
<!--<PackageReference Include="MySqlConnector" Aliases="MySqlConnector" />-->
1414
<PackageReference Include="FirebirdSql.Data.FirebirdClient" />
15-
<PackageReference Include="AdoNetCore.AseClient" />
15+
<!--<PackageReference Include="AdoNetCore.AseClient" />-->
1616
<PackageReference Include="System.Data.SqlClient" />
1717
<PackageReference Include="Microsoft.Data.SqlClient" />
1818
<PackageReference Include="Microsoft.Data.SQLite" />
1919
</ItemGroup>
2020

2121
<ItemGroup Condition=" '$(TargetFramework)' == 'net472' ">
2222
<PackageReference Include="Oracle.ManagedDataAccess" />
23-
<PackageReference Include="Microsoft.SqlServer.Types" />
23+
<!--<PackageReference Include="Microsoft.SqlServer.Types" />-->
2424

2525
<!--<Reference Include="IBM.Data.Informix">
2626
<HintPath>$(MSBuildThisFileDirectory)\..\Redist\IBM\IBM.Data.Informix.dll</HintPath>

Build/linq2db.TestProjects.props

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@
2828
<PackageReference Include="System.Linq.Dynamic.Core" />
2929
<!--don't remove, it is used for T4 nugets build-->
3030
<PackageReference Include="Humanizer.Core" />
31-
<PackageReference Include="JetBrains.Annotations" />
32-
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" />
31+
<PackageReference Include="Newtonsoft.Json" />
3332
</ItemGroup>
3433

3534
<ItemGroup Condition=" '$(TargetFramework)' == 'net472' ">

Directory.Packages.props

Lines changed: 68 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -10,112 +10,126 @@
1010
-->
1111
<ItemGroup>
1212
<!--as stated in issue 1 - packages in this item group shouldn't be duplicated in other groups-->
13-
<PackageVersion Include="linq2db" Version="4.4.1" />
14-
<PackageVersion Include="linq2db.Tools" Version="4.4.1" />
15-
<PackageVersion Include="linq2db.AspNet" Version="4.4.1" />
16-
<PackageVersion Include="linq2db.Remote.Grpc" Version="4.4.1" />
17-
<PackageVersion Include="linq2db.Remote.Wcf" Version="4.4.1" />
18-
<PackageVersion Include="JetBrains.Annotations" Version="2022.1.0" />
13+
<PackageVersion Include="linq2db" Version="5.0.0" />
14+
<PackageVersion Include="linq2db.Tools" Version="5.0.0" />
15+
<PackageVersion Include="linq2db.AspNet" Version="5.0.0" />
16+
<PackageVersion Include="linq2db.Remote.Grpc" Version="5.0.0" />
17+
<PackageVersion Include="linq2db.Remote.Wcf" Version="5.0.0" />
1918
<!--generic packages for source projects-->
2019
<!--generic packages for source projects-->
2120
<PackageVersion Include="System.Data.DataSetExtensions" Version="4.5.0" />
2221
<PackageVersion Include="Microsoft.CSharp" Version="4.7.0" />
2322
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="7.0.0" />
2423
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
2524
<!--build support-->
26-
<PackageVersion Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3" />
25+
<PackageVersion Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.4" />
2726
<PackageVersion Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="7.0.0" />
2827
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="1.1.1" />
29-
<PackageVersion Include="Mono.TextTemplating" Version="2.2.1" />
30-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.2.0" />
31-
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="6.0.0" />
28+
<PackageVersion Include="Mono.TextTemplating" Version="2.3.1" />
29+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.4.0" />
30+
<!--<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="6.0.0" />-->
3231
<!--data providers-->
33-
<PackageVersion Include="MySql.Data" Version="8.0.30" />
32+
<PackageVersion Include="MySql.Data" Version="8.0.32" />
3433
<PackageVersion Include="AdoNetCore.AseClient" Version="0.19.2" />
35-
<PackageVersion Include="System.Data.SqlClient" Version="4.8.3" />
36-
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.0.0" />
37-
<PackageVersion Include="System.Data.OleDb" Version="6.0.0" />
38-
<PackageVersion Include="System.Data.Odbc" Version="6.0.0" />
39-
<PackageVersion Include="Oracle.ManagedDataAccess" Version="21.7.0" />
34+
<PackageVersion Include="System.Data.SqlClient" Version="4.8.5" />
35+
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.1.0" />
36+
<PackageVersion Include="Oracle.ManagedDataAccess" Version="21.9.0" />
4037
<!--3.21 provider currently contains bug which leads to test failures with oracle 12-->
41-
<PackageVersion Include="Oracle.ManagedDataAccess.Core" Version="2.19.160" />
38+
<PackageVersion Include="Oracle.ManagedDataAccess.Core" Version="2.19.180" />
4239
<!--<PackageVersion Include="Oracle.ManagedDataAccess.Core" Version="3.21.70" />-->
4340
<PackageVersion Include="Devart.Data.Oracle" Version="10.0.0" />
44-
<PackageVersion Include="FirebirdSql.Data.FirebirdClient" Version="9.0.2" />
45-
<PackageVersion Include="System.Data.SQLite.Core" Version="1.0.116" />
41+
<PackageVersion Include="FirebirdSql.Data.FirebirdClient" Version="9.1.1" />
42+
<PackageVersion Include="System.Data.SQLite.Core" Version="1.0.117" />
4643
<PackageVersion Include="IBM.Data.DB.Provider" Version="11.5.5010.4" />
4744
<PackageVersion Include="IBM.Data.DB2.Core" Version="3.1.0.600" />
4845
<PackageVersion Include="IBM.Data.DB2.Core-lnx" Version="3.1.0.500" />
4946
<PackageVersion Include="IBM.Data.DB2.Core-osx" Version="3.1.0.500" />
50-
<PackageVersion Include="Net.IBM.Data.Db2" Version="6.0.0.200" />
51-
<PackageVersion Include="Net.IBM.Data.Db2-lnx" Version="6.0.0.200" />
52-
<PackageVersion Include="Net.IBM.Data.Db2-osx" Version="6.0.0.200" />
47+
<PackageVersion Include="Net.IBM.Data.Db2" Version="6.0.0.300" />
48+
<PackageVersion Include="Net.IBM.Data.Db2-lnx" Version="6.0.0.300" />
49+
<PackageVersion Include="Net.IBM.Data.Db2-osx" Version="6.0.0.300" />
5350
<PackageVersion Include="Npgsql" Version="7.0.1" />
54-
<PackageVersion Include="ClickHouse.Client" Version="5.0.4" />
51+
<PackageVersion Include="ClickHouse.Client" Version="6.3.0" />
5552
<PackageVersion Include="Octonica.ClickHouseClient" Version="2.2.9" />
56-
<PackageVersion Include="Microsoft.Data.Sqlite" Version="6.0.8" />
57-
<PackageVersion Include="Microsoft.SqlServer.Types" Version="160.900.6-rc0" />
53+
<PackageVersion Include="Microsoft.Data.Sqlite" Version="7.0.2" />
54+
<PackageVersion Include="Microsoft.SqlServer.Types" Version="160.1000.6" />
5855
<!--tests support-->
5956
<PackageVersion Include="NUnit" Version="3.13.3" />
60-
<PackageVersion Include="NUnit3TestAdapter" Version="4.2.1" />
61-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.3.1" />
62-
<PackageVersion Include="FluentAssertions" Version="6.7.0" />
63-
<PackageVersion Include="BenchmarkDotNet" Version="0.13.2" />
57+
<PackageVersion Include="NUnit3TestAdapter" Version="4.3.1" />
58+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.4.1" />
59+
<PackageVersion Include="FluentAssertions" Version="6.9.0" />
60+
<PackageVersion Include="BenchmarkDotNet" Version="0.13.4" />
6461
<PackageVersion Include="JetBrains.Profiler.Api" Version="1.1.8" />
65-
<PackageVersion Include="FSharp.Core" Version="6.0.5" />
62+
<PackageVersion Include="FSharp.Core" Version="7.0.0" />
6663
<!--packages for test projects-->
67-
<PackageVersion Include="System.Collections.Immutable" Version="6.0.0" />
68-
<PackageVersion Include="System.Text.Json" Version="6.0.5" />
64+
<PackageVersion Include="System.Collections.Immutable" Version="7.0.0" />
6965
<PackageVersion Include="MiniProfiler.Shared" Version="4.2.22" />
7066
<!--don't update due to https://github.com/OData/WebApi/issues/2653-->
71-
<PackageVersion Include="Microsoft.AspNet.OData" Version="7.5.14" />
67+
<PackageVersion Include="Microsoft.AspNet.OData" Version="7.6.3" />
7268
<!--don't update due to https://github.com/OData/AspNetCoreOData/issues/420#issuecomment-1219208060-->
7369
<PackageVersion Include="Microsoft.AspNetCore.OData" Version="8.0.4" />
74-
<PackageVersion Include="NodaTime" Version="3.1.2" />
70+
<PackageVersion Include="NodaTime" Version="3.1.6" />
7571
<PackageVersion Include="Humanizer.Core" Version="2.14.1" />
76-
<PackageVersion Include="System.Linq.Dynamic.Core" Version="1.2.19" />
72+
<PackageVersion Include="System.Linq.Dynamic.Core" Version="1.2.24" />
7773
<PackageVersion Include="dotMorten.Microsoft.SqlServer.Types" Version="1.5.0" />
7874
<!--
7975
<PackageVersion Include="dotMorten.Microsoft.SqlServer.Types" Version="2.5.0" />
8076
-->
8177
<!--remote targets + remote examples targets-->
8278
<!--source-->
83-
<PackageVersion Include="protobuf-net.Grpc" Version="1.0.171" />
84-
<PackageVersion Include="Grpc.Net.Client" Version="2.48.0" />
79+
<PackageVersion Include="protobuf-net.Grpc" Version="1.0.179" />
80+
<PackageVersion Include="Grpc.Net.Client" Version="2.51.0" />
8581
<!--examples-->
86-
<PackageVersion Include="linq2db.t4models" Version="4.0.0-preview.10" />
82+
<PackageVersion Include="linq2db.t4models" Version="4.3.0" />
8783
<!--tests-->
88-
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="6.0.0" />
89-
<PackageVersion Include="protobuf-net.Grpc.AspNetCore" Version="1.0.152" />
84+
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="7.0.0" />
85+
<PackageVersion Include="protobuf-net.Grpc.AspNetCore" Version="1.0.179" />
86+
<PackageVersion Include="Newtonsoft.Json" Version="13.0.2" />
9087
</ItemGroup>
91-
92-
<!--linq2db source--><!--
93-
<ItemGroup Condition=" '$(TargetFramework)' == 'net472' ">
94-
--><!--downgrade--><!--
88+
89+
<!--linq2db source-->
90+
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' OR '$(TargetFramework)' == 'net46' ">
91+
<!--downgrade-->
9592
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="1.1.1" />
9693
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="1.1.2" />
97-
</ItemGroup>-->
98-
99-
<!--<ItemGroup Condition=" '$(TargetFramework)' != 'net472' ">-->
100-
<ItemGroup>
94+
</ItemGroup>
95+
96+
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.1' ">
10197
<!--main version-->
102-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="6.0.0" />
98+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="6.0.1" />
99+
<!--<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="6.0.3" />-->
103100
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.0" />
101+
102+
<!--test v1.x compatibility, required for Pomelo EF.Core provider v5 -->
103+
<PackageVersion Include="MySqlConnector" Version="1.3.14" />
104+
<!--v7+ dropped support of netcoreapp3.1 and ns2.0 build is useless as it throws PNSE ¯\_(ツ)_/¯ -->
105+
<PackageVersion Include="System.Data.Odbc" Version="6.0.1" />
106+
<PackageVersion Include="System.Data.OleDb" Version="6.0.0" />
107+
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="6.0.0" />
108+
<PackageVersion Include="System.Text.Json" Version="6.0.7" />
104109
</ItemGroup>
105-
110+
106111
<!--test dependencies-->
107112
<ItemGroup Condition=" '$(TargetFramework)' == 'net472' ">
108113
<!--test v0.x compatibility, required for Pomelo EF.Core provider v3 -->
109114
<PackageVersion Include="MySqlConnector" Version="0.69.10" />
115+
<PackageVersion Include="System.Text.Json" Version="6.0.7" />
116+
117+
<!--<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="6.0.3" />-->
118+
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.0" />
110119
</ItemGroup>
111120

112-
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.1' ">
113-
<!--test v1.x compatibility, required for Pomelo EF.Core provider v5 -->
114-
<PackageVersion Include="MySqlConnector" Version="1.3.14" />
121+
<ItemGroup Condition=" '$(TargetFramework)' == 'net6.0' OR '$(TargetFramework)' == 'net7.0' ">
122+
<!--main version-->
123+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
124+
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.0" />
125+
126+
<PackageVersion Include="System.Data.Odbc" Version="7.0.0" />
127+
<PackageVersion Include="System.Data.OleDb" Version="7.0.0" />
128+
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="7.0.0" />
115129
</ItemGroup>
116130

117131
<ItemGroup Condition=" '$(TargetFramework)' != 'net472' AND '$(TargetFramework)' != 'netcoreapp3.1' ">
118-
<PackageVersion Include="MySqlConnector" Version="2.1.13" />
132+
<PackageVersion Include="MySqlConnector" Version="2.2.5" />
119133
</ItemGroup>
120134

121135
</Project>

Source/ISeriesProvider/DB2iSeriesAttributeReader.cs

Lines changed: 0 additions & 53 deletions
This file was deleted.

Source/ISeriesProvider/DB2iSeriesBulkCopy.AccessClient.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,19 @@ partial class DB2iSeriesBulkCopy : BasicBulkCopy
1616

1717
private BulkCopyRowsCopied ProviderSpecificCopyImpl_AccessClient<T>(
1818
ITable<T> table,
19-
BulkCopyOptions options,
19+
DataOptions dataOptions,
2020
IEnumerable<T> source,
2121
DataConnection dataConnection,
2222
DbConnection connection,
2323
DB2iSeriesAccessClientProviderAdapter adapter,
2424
Action<DataConnection, Func<string>, Func<int>> traceAction)
2525
{
26+
var options = dataOptions.BulkCopyOptions;
2627
var descriptor = dataConnection.MappingSchema.GetEntityDescriptor(typeof(T));
2728
var columns = descriptor.Columns.Where(c => !c.SkipOnInsert || options.KeepIdentity == true && c.IsIdentity).ToList();
2829
var rd = new BulkCopyReader<T>(dataConnection, columns, source);
2930
var rc = new BulkCopyRowsCopied();
30-
var sqlBuilder = dataConnection.DataProvider.CreateSqlBuilder(dataConnection.MappingSchema);
31+
var sqlBuilder = dataConnection.DataProvider.CreateSqlBuilder(dataConnection.MappingSchema, dataOptions);
3132
var tableName = GetTableName(sqlBuilder, options, table);
3233

3334
var columnNames = columns.Select(x => x.ColumnName);
@@ -51,7 +52,7 @@ private BulkCopyRowsCopied ProviderSpecificCopyImpl_AccessClient<T>(
5152

5253
//*LOB and XML types not supported, fallback to multiple rows
5354
if (columnDataTypes.Any(x => x.In(DataType.Blob, DataType.Text, DataType.NText, DataType.Xml)))
54-
return MultipleRowsCopy(table, options, source);
55+
return MultipleRowsCopy(table, dataOptions, source);
5556

5657
var columnDbDataTypes = columns
5758
.Select((x,i) => x
@@ -83,7 +84,7 @@ private BulkCopyRowsCopied ProviderSpecificCopyImpl_AccessClient<T>(
8384
//In case columns can't be mapped fall back to multiple rows
8485
catch
8586
{
86-
return MultipleRowsCopy(table, options, source);
87+
return MultipleRowsCopy(table, dataOptions, source);
8788
}
8889

8990
count++;

0 commit comments

Comments
 (0)