Skip to content

Commit 3eb8548

Browse files
ankaneroji
andcommitted
Restored support for .NET Standard 2.0 - resolves #48
Co-authored-by: Shay Rojansky <[email protected]>
1 parent a6e8a7a commit 3eb8548

File tree

9 files changed

+28
-4
lines changed

9 files changed

+28
-4
lines changed

src/Pgvector.Dapper/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.3.1 (unreleased)
2+
3+
- Restored support for .NET Standard 2.0
4+
15
## 0.3.0 (2024-06-25)
26

37
- Added support for `halfvec` and `sparsevec` types

src/Pgvector.Dapper/HalfvecTypeHandler.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66

77
namespace Pgvector.Dapper;
88

9+
#if NET5_0_OR_GREATER
10+
911
public class HalfvecTypeHandler : SqlMapper.TypeHandler<HalfVector?>
1012
{
1113
public override HalfVector? Parse(object value)
@@ -26,3 +28,5 @@ public override void SetValue(IDbDataParameter parameter, HalfVector? value)
2628
}
2729
}
2830
}
31+
32+
#endif

src/Pgvector.Dapper/Pgvector.Dapper.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<PackageProjectUrl>https://github.com/pgvector/pgvector-dotnet</PackageProjectUrl>
1010
<PackageReadmeFile>README.md</PackageReadmeFile>
1111

12-
<TargetFrameworks>net6.0</TargetFrameworks>
12+
<TargetFrameworks>net6.0;netstandard2.0;net462</TargetFrameworks>
1313
<Nullable>enable</Nullable>
1414
<LangVersion>latest</LangVersion>
1515
</PropertyGroup>

src/Pgvector/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.3.1 (unreleased)
2+
3+
- Restored support for .NET Standard 2.0
4+
15
## 0.3.0 (2024-06-25)
26

37
- Added support for `halfvec` and `sparsevec` types

src/Pgvector/HalfVector.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
namespace Pgvector;
66

7+
#if NET5_0_OR_GREATER
8+
79
public class HalfVector : IEquatable<HalfVector>
810
{
911
public ReadOnlyMemory<Half> Memory { get; }
@@ -42,3 +44,5 @@ public override int GetHashCode()
4244
return hashCode.ToHashCode();
4345
}
4446
}
47+
48+
#endif

src/Pgvector/Npgsql/HalfvecConverter.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
namespace Pgvector.Npgsql;
77

8+
#if NET5_0_OR_GREATER
9+
810
public class HalfvecConverter : PgStreamingConverter<HalfVector>
911
{
1012
public override HalfVector Read(PgReader reader)
@@ -89,3 +91,5 @@ public override async ValueTask WriteAsync(
8991
}
9092
}
9193
}
94+
95+
#endif

src/Pgvector/Npgsql/VectorTypeInfoResolverFactory.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@ static TypeInfoMappingCollection AddMappings(TypeInfoMappingCollection mappings)
2121
{
2222
mappings.AddType<Vector>("vector",
2323
static (options, mapping, _) => mapping.CreateInfo(options, new VectorConverter()), isDefault: true);
24+
#if NET5_0_OR_GREATER
2425
mappings.AddType<HalfVector>("halfvec",
2526
static (options, mapping, _) => mapping.CreateInfo(options, new HalfvecConverter()), isDefault: true);
27+
#endif
2628
mappings.AddType<SparseVector>("sparsevec",
2729
static (options, mapping, _) => mapping.CreateInfo(options, new SparsevecConverter()), isDefault: true);
2830
return mappings;
@@ -40,7 +42,9 @@ sealed class ArrayResolver : Resolver, IPgTypeInfoResolver
4042
static TypeInfoMappingCollection AddMappings(TypeInfoMappingCollection mappings)
4143
{
4244
mappings.AddArrayType<Vector>("vector");
45+
#if NET5_0_OR_GREATER
4346
mappings.AddArrayType<HalfVector>("halfvec");
47+
#endif
4448
mappings.AddArrayType<SparseVector>("sparsevec");
4549
return mappings;
4650
}

src/Pgvector/Pgvector.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<PackageProjectUrl>https://github.com/pgvector/pgvector-dotnet</PackageProjectUrl>
1010
<PackageReadmeFile>README.md</PackageReadmeFile>
1111

12-
<TargetFrameworks>net6.0</TargetFrameworks>
12+
<TargetFrameworks>net6.0;netstandard2.0;net462</TargetFrameworks>
1313
<Nullable>enable</Nullable>
1414
<LangVersion>latest</LangVersion>
1515
<NoWarn>NPG9001</NoWarn>

src/Pgvector/SparseVector.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,15 @@ public SparseVector(IDictionary<int, float> dictionary, int dimensions)
7070

7171
public SparseVector(string s)
7272
{
73-
var parts = s.Split('/', 2);
73+
var parts = s.Split(['/'], 2);
7474
var elements = parts[0].Substring(1, parts[0].Length - 2).Split(',');
7575
var nnz = elements.Length;
7676
var indices = new int[nnz];
7777
var values = new float[nnz];
7878

7979
for (int i = 0; i < nnz; i++)
8080
{
81-
var ep = elements[i].Split(':', 2);
81+
var ep = elements[i].Split([':'], 2);
8282
indices[i] = Int32.Parse(ep[0], CultureInfo.InvariantCulture) - 1;
8383
values[i] = float.Parse(ep[1], CultureInfo.InvariantCulture);
8484
}

0 commit comments

Comments
 (0)