Browse Source

ci: add ci for test and auto-release. (#1047)

* Add unittest redist holder for all test projects.

* Move redist holder to another folder.

* Create dotnet.yml to config github action

* Revise the sln file.

* Update dotnet.yml

* Add version to tensorflow.hub.

* Create release.yml

* Update dotnet.yml

* Update and rename dotnet.yml to build_and_test.yml

* Update release.yml

* Update release.yml

* Revise project using.

* Update build_and_test.yml

* Update release.yml

* Update the package info of Tensorflow.Hub.

* Add a tolorance to equivalence of NDArray.

* Create semantic.yml

* fix: run code clean.

* Update release.yml

* Update release.yml

* ci: revise the auto release ci.

* ci: update release ci.

* ci: update release ci.

* ci: update ci files.

* ci: update ci files.

* ci: update ci files.

* ci: update ci files.

* ci: update ci files.

* ci: update release ci and hub package info.

* ci: revise build_and_test ci.

* test: add tolorance to float NDArray comparison.

* ci: disable linux test.

* ci: update release ci.

* Update release.yml

* ci: update release ci.

* ci: revise auto-release ci.

* ci: update auto-release ci.

* Update release.yml

* ci: specify packed project names of auto-release.

* ci: revise auto release ci file.

* ci: revise auto-release ci file.

* ci: revise auto-release ci file.

* ci: revise auto-release ci file.

* Update release.yml

* ci: revise auto-release ci file.

* ci: revise auto-release ci file.

* ci: revise auto-release ci file.
tags/v0.100.5-BERT-load
Rinne GitHub 2 years ago
parent
commit
d9988d7ccd
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 280 additions and 28 deletions
  1. +66
    -0
      .github/workflows/build_and_test.yml
  2. +100
    -0
      .github/workflows/release.yml
  3. +17
    -0
      .github/workflows/semantic.yml
  4. +23
    -2
      TensorFlow.NET.sln
  5. +3
    -0
      helpers/Tensorflow.UnitTest.RedistHolder/EmptyClass.cs
  6. +12
    -0
      helpers/Tensorflow.UnitTest.RedistHolder/Tensorflow.UnitTest.RedistHolder.csproj
  7. +29
    -16
      src/TensorFlowNET.Core/NumPy/NDArray.Operators.cs
  8. +1
    -0
      src/TensorFlowNET.Core/Tensorflow.Binding.csproj
  9. +1
    -0
      src/TensorFlowNET.Keras/Tensorflow.Keras.csproj
  10. +19
    -0
      src/TensorflowNET.Hub/Tensorflow.Hub.csproj
  11. +1
    -1
      test/TensorFlowNET.Graph.UnitTest/TensorFlowNET.Graph.UnitTest.csproj
  12. +1
    -1
      test/TensorFlowNET.Keras.UnitTest/Layers/ActivationTest.cs
  13. +1
    -1
      test/TensorFlowNET.Keras.UnitTest/Layers/AttentionTest.cs
  14. +1
    -1
      test/TensorFlowNET.Keras.UnitTest/Losses/LossesTest.cs
  15. +1
    -1
      test/TensorFlowNET.Keras.UnitTest/Tensorflow.Keras.UnitTest.csproj
  16. +1
    -2
      test/TensorFlowNET.Native.UnitTest/Tensorflow.Native.UnitTest.csproj
  17. +1
    -1
      test/TensorFlowNET.UnitTest/Tensorflow.Binding.UnitTest.csproj
  18. +2
    -2
      test/TensorflowNET.Hub.Unittest/Tensorflow.Hub.Unittest.csproj

+ 66
- 0
.github/workflows/build_and_test.yml View File

@@ -0,0 +1,66 @@
# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net

name: build_and_test

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
types: ["opened", "reopened", "synchronize", "ready_for_review", "auto_merge_enabled"]

jobs:
windows:

runs-on: windows-latest

steps:
- uses: actions/checkout@v3
- name: Setup .NET 6
uses: actions/setup-dotnet@v3
with:
dotnet-version: 6.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build CPU version
run: dotnet build --no-restore
- name: Test CPU version
run: dotnet test --no-build --verbosity normal
- name: uninstall redist cpu for unit tests
run: dotnet remove helpers/Tensorflow.UnitTest.RedistHolder package SciSharp.TensorFlow.Redist
- name: install redist gpu for unit tests
run: dotnet add helpers/Tensorflow.UnitTest.RedistHolder package SciSharp.TensorFlow.Redist-Windows-GPU
- name: Restore dependencies
run: dotnet restore
- name: Build GPU version
run: dotnet build --no-restore
# - name: Test GPU version
# run: dotnet test --no-build --verbosity normal

linux:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: 6.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build CPU version
run: dotnet build --no-restore
# - name: Test CPU version
# run: dotnet test --no-build --verbosity normal
- name: uninstall redist cpu for unit tests
run: dotnet remove helpers/Tensorflow.UnitTest.RedistHolder package SciSharp.TensorFlow.Redist
- name: install redist gpu for unit tests
run: dotnet add helpers/Tensorflow.UnitTest.RedistHolder package SciSharp.TensorFlow.Redist-Linux-GPU
- name: Restore dependencies
run: dotnet restore
- name: Build GPU version
run: dotnet build --no-restore
# - name: Test GPU version
# run: dotnet test --no-build --verbosity normal

+ 100
- 0
.github/workflows/release.yml View File

@@ -0,0 +1,100 @@
name: auto-release

on:
label:
types: [created, edited]
pull_request:
branches:
- master
types: [ labeled, opened, reopened, synchronize ]

env:
MYGET_API_TOKEN: ${{ SECRETS.RINNE_MYGET_KEY }}
GITHUB_TOKEN: ${{ SECRETS.RINNE_GITHUB_TOKEN }}

jobs:
build:
if: contains(github.event.pull_request.labels.*.name, 'auto-release')
runs-on: windows-latest

steps:
- uses: actions/checkout@v3
- name: Setup .NET 6.0.x SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: 6.0.x

- name: Check .NET info
run: dotnet --info

- name: Install dependencies
run: dotnet restore

- name: Build solution
run: dotnet build -c Release --no-restore

# run-semantic-release:
# runs-on: ubuntu-latest
# needs: build

# steps:
# - name: Checkout
# uses: actions/checkout@v2

# - name: Run semantic-release
# run: |
# export PATH=$PATH:$(yarn global bin)
# yarn global add semantic-release@17.4.3
# semantic-release

release:
runs-on: windows-latest
# needs: run-semantic-release
needs: build

steps:
- uses: actions/checkout@v3
- name: Setup .NET 6.0.x SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: 6.0.x

- name: Check .NET info
run: dotnet --info

- name: Install dependencies
run: dotnet restore

- name: Build solution
run: dotnet build -c Release --no-restore

- name: Pack packages
run: |
git fetch --unshallow;
git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*";
git fetch origin;
$LastTag = git describe --tags;
echo "Last tag is: $LastTag";
$Version = ($LastTag).TrimStart('v') + "-preview";
echo "Publishing version: $Version";
dotnet pack ./src/TensorFlowNET.Core/Tensorflow.Binding.csproj -c Release -o packages /p:PackageVersion=$Version /p:Version=$Version;
dotnet pack ./src/TensorFlowNET.Keras/Tensorflow.Keras.csproj -c Release -o packages /p:PackageVersion=$Version /p:Version=$Version;
dotnet pack ./src/TensorflowNET.Hub/Tensorflow.Hub.csproj -c Release -o packages /p:PackageVersion=$Version /p:Version=$Version;

if($LastExitCode -ne 0)
{
Write-Warning -Message "Pack packages warming, last exit code is ${LastExitCode}."
$LastExitCode = 0;
}

- name: Upload packages artifacts
uses: actions/upload-artifact@v1.0.0
with:
name: "drop-ci-packages"
path: './packages'

- name: Add myget nuget source
run: dotnet nuget add source https://www.myget.org/F/rinne/api/v2/package --name myget.org

- name: Push TensorFlow.NET to myget.org
run: dotnet nuget push .\packages\TensorFlow*.nupkg -s myget.org -k $env:MYGET_API_TOKEN --skip-duplicate

+ 17
- 0
.github/workflows/semantic.yml View File

@@ -0,0 +1,17 @@
name: Semantic

on:
pull_request:
branches: [ "master" ]

jobs:
semantic-pull-request:
name: Semantic check
runs-on: windows-latest
steps:
- name: semantic-pull-request
uses: amannn/action-semantic-pull-request@v4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
validateSingleCommit: true

+ 23
- 2
TensorFlow.NET.sln View File

@@ -31,7 +31,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{01A1787F-A9B
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{1B0918B9-65AD-4F34-A287-AF4597B27DBD}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "console", "console", "{E1A5D2B7-10AF-4876-85C0-7714EF274214}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "helpers", "helpers", "{E1A5D2B7-10AF-4876-85C0-7714EF274214}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tensorflow.UnitTest.RedistHolder", "helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj", "{62D543A2-8846-45A3-829B-5754B094A8E2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -262,13 +264,31 @@ Global
{7DEA8760-E401-4872-81F3-405F185A13A0}.Release|x64.Build.0 = Release|Any CPU
{7DEA8760-E401-4872-81F3-405F185A13A0}.Release|x86.ActiveCfg = Release|Any CPU
{7DEA8760-E401-4872-81F3-405F185A13A0}.Release|x86.Build.0 = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|x64.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|x64.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|x86.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Debug|x86.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|Any CPU.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|Any CPU.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|x64.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|x64.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|x86.ActiveCfg = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.GPU|x86.Build.0 = Debug|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|Any CPU.Build.0 = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|x64.ActiveCfg = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|x64.Build.0 = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|x86.ActiveCfg = Release|Any CPU
{62D543A2-8846-45A3-829B-5754B094A8E2}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{FD682AC0-7B2D-45D3-8B0D-C6D678B04144} = {01A1787F-A9BE-4221-84E8-6360DD010AB6}
{3A6EB896-604F-4E25-B677-B8103BCF3D2E} = {1B0918B9-65AD-4F34-A287-AF4597B27DBD}
{3A6EB896-604F-4E25-B677-B8103BCF3D2E} = {E1A5D2B7-10AF-4876-85C0-7714EF274214}
{23C28035-2FCE-41F3-9A12-E73CE8A5AE32} = {1B0918B9-65AD-4F34-A287-AF4597B27DBD}
{03F06299-3F4B-4449-A709-3A647657BC0C} = {E1A5D2B7-10AF-4876-85C0-7714EF274214}
{49D71826-C03D-4FA7-9BAC-22C1327E65CF} = {01A1787F-A9BE-4221-84E8-6360DD010AB6}
@@ -279,6 +299,7 @@ Global
{3F5388FF-FBB4-462B-8F6F-829FFBAEB8A3} = {1B0918B9-65AD-4F34-A287-AF4597B27DBD}
{9738D16A-CFA0-405C-A7DF-D3D203B0CB18} = {01A1787F-A9BE-4221-84E8-6360DD010AB6}
{7DEA8760-E401-4872-81F3-405F185A13A0} = {1B0918B9-65AD-4F34-A287-AF4597B27DBD}
{62D543A2-8846-45A3-829B-5754B094A8E2} = {E1A5D2B7-10AF-4876-85C0-7714EF274214}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {2DEAD3CC-486B-4918-A607-50B0DE7B114A}


+ 3
- 0
helpers/Tensorflow.UnitTest.RedistHolder/EmptyClass.cs View File

@@ -0,0 +1,3 @@
internal class EmptyClass
{
}

+ 12
- 0
helpers/Tensorflow.UnitTest.RedistHolder/Tensorflow.UnitTest.RedistHolder.csproj View File

@@ -0,0 +1,12 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
<PackageReference Include="SciSharp.TensorFlow.Redist-Lite" Version="2.6.0" />
</ItemGroup>

</Project>

+ 29
- 16
src/TensorFlowNET.Core/NumPy/NDArray.Operators.cs View File

@@ -1,8 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using static Tensorflow.Binding;
using static Tensorflow.Binding;

namespace Tensorflow.NumPy
{
@@ -14,35 +10,52 @@ namespace Tensorflow.NumPy
public static NDArray operator -(NDArray lhs, NDArray rhs) => new NDArray(BinaryOpWrapper("sub", lhs, rhs));
[AutoNumPy]
public static NDArray operator *(NDArray lhs, NDArray rhs) => new NDArray(BinaryOpWrapper("mul", lhs, rhs));
[AutoNumPy]
[AutoNumPy]
public static NDArray operator /(NDArray lhs, NDArray rhs) => new NDArray(BinaryOpWrapper("div", lhs, rhs));
[AutoNumPy]
public static NDArray operator %(NDArray lhs, NDArray rhs) => new NDArray(BinaryOpWrapper("mod", lhs, rhs));
[AutoNumPy]
[AutoNumPy]
public static NDArray operator >(NDArray lhs, NDArray rhs) => new NDArray(gen_math_ops.greater(lhs, rhs));
[AutoNumPy]
[AutoNumPy]
public static NDArray operator <(NDArray lhs, NDArray rhs) => new NDArray(gen_math_ops.less(lhs, rhs));
[AutoNumPy]
[AutoNumPy]
public static NDArray operator -(NDArray lhs) => new NDArray(gen_math_ops.neg(lhs));
[AutoNumPy]
public static NDArray operator ==(NDArray lhs, NDArray rhs)
{
if(ReferenceEquals(lhs, rhs))
if (ReferenceEquals(lhs, rhs))
return Scalar(true);
if(lhs is null)
if (lhs is null)
return Scalar(false);
if(rhs is null)
if (rhs is null)
return Scalar(false);
return new NDArray(math_ops.equal(lhs, rhs));
// TODO(Rinne): use np.allclose instead.
if (lhs.dtype.is_floating() || rhs.dtype.is_floating())
{
var diff = tf.abs(lhs - rhs);
return new NDArray(gen_math_ops.less(diff, new NDArray(1e-5).astype(diff.dtype)));
}
else
{
return new NDArray(math_ops.equal(lhs, rhs));
}
}
[AutoNumPy]
public static NDArray operator !=(NDArray lhs, NDArray rhs)
{
if(ReferenceEquals(lhs, rhs))
if (ReferenceEquals(lhs, rhs))
return Scalar(false);
if(lhs is null || rhs is null)
if (lhs is null || rhs is null)
return Scalar(true);
return new NDArray(math_ops.not_equal(lhs, rhs));
if (lhs.dtype.is_floating() || rhs.dtype.is_floating())
{
var diff = tf.abs(lhs - rhs);
return new NDArray(gen_math_ops.greater_equal(diff, new NDArray(1e-5).astype(diff.dtype)));
}
else
{
return new NDArray(math_ops.not_equal(lhs, rhs));
}
}
}
}

+ 1
- 0
src/TensorFlowNET.Core/Tensorflow.Binding.csproj View File

@@ -41,6 +41,7 @@ https://tensorflownet.readthedocs.io</Description>
<FileVersion>1.0.0.0</FileVersion>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<PackageOutputPath>packages</PackageOutputPath>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>Open.snk</AssemblyOriginatorKeyFile>
<Platforms>AnyCPU;x64</Platforms>


+ 1
- 0
src/TensorFlowNET.Keras/Tensorflow.Keras.csproj View File

@@ -34,6 +34,7 @@ Keras is an API designed for human beings, not machines. Keras follows best prac
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<PackageTags>tensorflow, keras, deep learning, machine learning</PackageTags>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<PackageOutputPath>packages</PackageOutputPath>
<RepositoryType>Git</RepositoryType>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>Open.snk</AssemblyOriginatorKeyFile>


+ 19
- 0
src/TensorflowNET.Hub/Tensorflow.Hub.csproj View File

@@ -4,6 +4,25 @@
<TargetFrameworks>netstandard2.0;net6</TargetFrameworks>
<LangVersion>10</LangVersion>
<Nullable>enable</Nullable>
<Version>1.0.0</Version>
<PackageId>TensorFlow.Hub</PackageId>
<PackageLicenseExpression>Apache2.0</PackageLicenseExpression>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<SignAssembly>true</SignAssembly>
<Authors>Yaohui Liu, Haiping Chen</Authors>
<Company>SciSharp STACK</Company>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Copyright>Apache 2.0, Haiping Chen $([System.DateTime]::UtcNow.ToString(yyyy))</Copyright>
<RepositoryUrl>https://github.com/SciSharp/TensorFlow.NET</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageProjectUrl>http://scisharpstack.org</PackageProjectUrl>
<PackageIconUrl>https://avatars3.githubusercontent.com/u/44989469?s=200&amp;v=4</PackageIconUrl>
<PackageTags>TensorFlow, SciSharp, Machine Learning, Deep Learning, Transfer Learning, TensorFlow Hub, TensorFlow.NET, TF.NET, AI</PackageTags>
<PackageOutputPath>packages</PackageOutputPath>
<Description>
Google's TensorFlow Hub full binding in .NET Standard.
A library for transfer learning with TensorFlow.NET.
</Description>
</PropertyGroup>

<ItemGroup>


+ 1
- 1
test/TensorFlowNET.Graph.UnitTest/TensorFlowNET.Graph.UnitTest.csproj View File

@@ -31,10 +31,10 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Core\Tensorflow.Binding.csproj" />
<ProjectReference Include="..\TensorFlowNET.Keras.UnitTest\Tensorflow.Keras.UnitTest.csproj" />
</ItemGroup>


+ 1
- 1
test/TensorFlowNET.Keras.UnitTest/Layers/ActivationTest.cs View File

@@ -49,7 +49,7 @@ namespace Tensorflow.Keras.UnitTest.Layers
Tensor input = tf.constant(new float[] { -3f, -2f, -1f, 0f, 1f, 2f });
Tensor output = keras.layers.Softplus().Apply(input);
NDArray expected = new NDArray(new float[] { 0.04858733f, 0.12692805f, 0.31326166f, 0.6931472f, 1.3132616f, 2.126928f });
Assert.AreEqual(expected, output.numpy());
Assert.IsTrue(expected == output.numpy());
}

[TestMethod]


+ 1
- 1
test/TensorFlowNET.Keras.UnitTest/Layers/AttentionTest.cs View File

@@ -94,7 +94,7 @@ namespace Tensorflow.Keras.UnitTest.Layers
{ 7.6400003f, 12.24f, 16.84f },
{ 14.24f, 22.84f, 31.439999f }
} }, dtype: np.float32);
Assert.AreEqual(expected, actual.numpy());
Assert.IsTrue(expected == actual.numpy());
}

[TestMethod]


+ 1
- 1
test/TensorFlowNET.Keras.UnitTest/Losses/LossesTest.cs View File

@@ -39,7 +39,7 @@ public class LossesTest : EagerModeTestBase
// Using 'none' reduction type.
bce = tf.keras.losses.BinaryCrossentropy(from_logits: true, reduction: Reduction.NONE);
loss = bce.Call(y_true, y_pred);
Assert.AreEqual(new float[] { 0.23515666f, 1.4957594f }, loss.numpy());
Assert.IsTrue(new NDArray(new float[] { 0.23515666f, 1.4957594f }) == loss.numpy());
}

/// <summary>


+ 1
- 1
test/TensorFlowNET.Keras.UnitTest/Tensorflow.Keras.UnitTest.csproj View File

@@ -20,10 +20,10 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Keras\Tensorflow.Keras.csproj" />
</ItemGroup>



+ 1
- 2
test/TensorFlowNET.Native.UnitTest/Tensorflow.Native.UnitTest.csproj View File

@@ -51,11 +51,10 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
<PackageReference Include="SciSharp.TensorFlow.Redist-Lite" Version="2.6.0" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Core\Tensorflow.Binding.csproj" />
</ItemGroup>



+ 1
- 1
test/TensorFlowNET.UnitTest/Tensorflow.Binding.UnitTest.csproj View File

@@ -45,10 +45,10 @@
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.0.0" />
<PackageReference Include="MSTest.TestAdapter" Version="2.2.8" />
<PackageReference Include="MSTest.TestFramework" Version="2.2.8" />
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Core\Tensorflow.Binding.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Text\Tensorflow.Text.csproj" />
</ItemGroup>


+ 2
- 2
test/TensorflowNET.Hub.Unittest/Tensorflow.Hub.Unittest.csproj View File

@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6</TargetFramework>
@@ -13,10 +13,10 @@
<PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
<PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
<PackageReference Include="coverlet.collector" Version="3.1.2" />
<PackageReference Include="SciSharp.TensorFlow.Redist" Version="2.11.3" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\helpers\Tensorflow.UnitTest.RedistHolder\Tensorflow.UnitTest.RedistHolder.csproj" />
<ProjectReference Include="..\..\src\TensorflowNET.Hub\Tensorflow.Hub.csproj" />
</ItemGroup>



Loading…
Cancel
Save