From 3c684d2be9810597756a79c3836b35519e741df4 Mon Sep 17 00:00:00 2001 From: shimat Date: Mon, 3 Jun 2024 16:30:08 +0900 Subject: [PATCH 1/2] Add tests for Linux --- .github/workflows/test.yml | 23 ++++++++++++++++++++++- LibSVMsharp/LibSVMsharp.csproj | 15 +++++++++++---- LibSVMsharp/native/liblibsvm.so | Bin 0 -> 98584 bytes LibSVMsharp/{ => native}/libsvm.dll | Bin 4 files changed, 33 insertions(+), 5 deletions(-) create mode 100644 LibSVMsharp/native/liblibsvm.so rename LibSVMsharp/{ => native}/libsvm.dll (100%) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e6089e3..5c86f94 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,7 +8,7 @@ on: jobs: test-windows: - runs-on: windows-latest + runs-on: windows-2022 steps: - uses: actions/checkout@v4 @@ -26,3 +26,24 @@ jobs: - name: Test run: dotnet test --no-build --framework net48 --verbosity normal + + test-linux: + runs-on: ubuntu-22.04 + + steps: + - uses: actions/checkout@v4 + + - name: Setup .NET + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 8.0.x + + - name: Restore dependencies + run: dotnet restore + + - name: Build + run: dotnet build --no-restore --framework net8 + + - name: Test + run: dotnet test --no-build --framework net8 --verbosity normal + \ No newline at end of file diff --git a/LibSVMsharp/LibSVMsharp.csproj b/LibSVMsharp/LibSVMsharp.csproj index 2030523..e5e68dc 100644 --- a/LibSVMsharp/LibSVMsharp.csproj +++ b/LibSVMsharp/LibSVMsharp.csproj @@ -1,6 +1,6 @@  - net8;net48 + netstandard2.0;net48 LibSVMsharp LibSVMsharp Copyright © 2014 @@ -8,6 +8,14 @@ 12 CA1401; + + LibSVMsharpCore + 0.1.0 + MIT + https://github.com/shimat/LibSVMsharp + https://github.com/shimat/LibSVMsharp.git + Some text. + full @@ -27,8 +35,7 @@ - - Always - + + \ No newline at end of file diff --git a/LibSVMsharp/native/liblibsvm.so b/LibSVMsharp/native/liblibsvm.so new file mode 100644 index 0000000000000000000000000000000000000000..88ba2928a9622ba9b01d1ecbc44397ceb2fcb9d0 GIT binary patch literal 98584 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

qN9uMzEFIi2tK= z0Kj9olNkw*a-#Vd_*`E&5flG_jo3KnXA@2|BJ-zB-N;{s;?@KSH_|(Bt_(3;u5a-% z@;Ble^xuduraOm7czTsV*>JlRKNugo38MKM@k4+yOrZ_!TW|n~$5_9TKAD&CPIn`I zvGHvVLN(2BdA>XLG1l)5_j?G8jodtoTY2zYe0XK5Z~AjVz^5D40KUfQ4e1JpyC_#FAnk&!A7oNUEZj0;gfsa)vIv0 z97IebzOk>xaCwG5_DNue*bfyOe^3d$;pV~q8v7)Wqx~I$vGKFiJ{-gCkBzKwV?nRN z!z{3ELp;X5AL~q}IwY^c6XQ4Ncn>g`Qls&WeMXu8%lMxmE^{*SH}*~0RQ$>W{@H*V z`|wLDvGG^)ixPNNUoPFv!Z-BCpxbb1mXD1e-S6X&@!bje8}SS`Gai|ur62eTBUm)JGYp}h;M+LcsUx=|KvByc=aqW)n25F7uPihoSSx5Y-rdm{Y_!C!g5;=orN z_+N0q*bjZC(ho-auEx?NAH&actg-&<68t>R%E##DzpwmQ&XtE07}roA^D+8s zW1MKTZ)2a7(H|%3zfVp?ni=2FSH?ajL;o4$QDYph$kGgbXsAV_ABgJTGFfs%pBdv{ zj(zzU`)SUQ-spJQfE(j(qa4QgoBa$QBR`J$=|5oOUpa@MYv{*86>iKUK2v^!&&2(| z^??N{Yz7P)e)=4@IwCANhSlce32}6;JfgMRSY0s89Li#4*tiS>*1uhQFpy4K znS+&K$V~WeOm^{j!zH6kBk|U%IQvq3khF;mXGxJEao9sN8eE8h$OXYDo228%s z6)VfJQ6RNor3w>kxg24!FBWA4w;!?9vej{7CV=9qrCjWLDi&)vG6*eZ)f3=7N1{j*}WX-EWMqKh5iu~X2 z1(1sqnlzSz`k^ItRM0B1Fc`Z$BUhNAXNKF*5oengoRF){C$A72WgTXDct{JzM-!WF zVszw5OUs58ovv7LGyqYHumMnZcEcO9f^UG-_77#3#|4+MD|%ujC}G8n5fvydIOYmg z0gqXR5bI|e)@ zBKFk~A<%q{T!54w>^l%^Mgo7B?FTIRNJ}vYG8Sj#GBc6oS}FINa9LU;d(vtQm$x;s z5Fo?lqH1*6jmeC((8{op7s9#j8MBxevp0vL{~z}Zuz{2-UBma7HT;CwBP>G71Z1<2 z2@Ji*Z&`|4k7u^gE<@~(kgMSp<#9cMNbw|yv8Y3Ok%;INgzk%7fx)e~af`R~25Nj4 zUYOI?oO2078>4SrA!ws7mvCPcE|Y*)GuEY|+q4R_=quKehIU@$zf92=nWecvKB5XDK1%{2HVwe^YEkng>wq4){#1)gQI;w#+xyIw|AS)PtwlU zijqz#v^fh;9k0!?s$qYUN$WP7HD|A*&~}A;L#kPu?Ch|nBz0uWa?H@u&a)yRhhs*D zJ3Ffb*TG~T(6patddyaByiK#g#*%7v+~}}cQ^zOWsAYX;b5>Fp&EIhkX}efKE{O># z!21mRW+~WZa2@L133rZqFNEt-?{wzkSAyR>{5<%@K4tJ+5evY3MU1}^?@N`R>m+=Z z;m0k#Ui_-?<3pbM@T=e?wxJJFMwY=ezDI=c&^9q1_k8# zoeunN#IF-SK3({26mOcgNx7Th-lX0QCxn+R$`gjW6+bfm2MYGDD>pqd`;n*qa?@uI z7yonXiC^9vx%sL*`x-I3RvmQ9qGkNwkPj9<7GwG%Sd$jt6kvlSP_+@0}tcPy=&+{pPM^eOKu} z9{1_pe?IiXv>*TErp2?*Z>U|oDktZmaSKoU@;7(fwwdb^%_rCs*Z+OjHR?T{>;J~)&?=*eypn1mT9WA~;e(?JX-nsASGiU55-}K07 zx81n@w0CwbEB)f`Kfkzj@$9J+zwu;a*{}7PM}PWq>6zcY`qK*!^^H1n=Do)wn=PMp z{OfRQ&m8a0o|X2V`)Ai*`>VbS&8UkE{F3p*7E Date: Mon, 3 Jun 2024 16:40:55 +0900 Subject: [PATCH 2/2] test target --- .github/workflows/test.yml | 4 ++-- .../LibSVMsharp.Examples.Classification.csproj | 4 ++-- .../LibSVMsharp.Examples.RapidPrediction.csproj | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5c86f94..476d3ec 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,7 +22,7 @@ jobs: run: dotnet restore - name: Build - run: dotnet build --no-restore --framework net48 + run: dotnet build --no-restore --framework net48 ./LibSVMSharp.Tests/LibSVMSharp.Tests.csproj - name: Test run: dotnet test --no-build --framework net48 --verbosity normal @@ -42,7 +42,7 @@ jobs: run: dotnet restore - name: Build - run: dotnet build --no-restore --framework net8 + run: dotnet build --no-restore --framework net8 ./LibSVMSharp.Tests/LibSVMSharp.Tests.csproj - name: Test run: dotnet test --no-build --framework net8 --verbosity normal diff --git a/LibSVMsharp.Examples.Classification/LibSVMsharp.Examples.Classification.csproj b/LibSVMsharp.Examples.Classification/LibSVMsharp.Examples.Classification.csproj index 738b01a..4113f63 100644 --- a/LibSVMsharp.Examples.Classification/LibSVMsharp.Examples.Classification.csproj +++ b/LibSVMsharp.Examples.Classification/LibSVMsharp.Examples.Classification.csproj @@ -1,7 +1,7 @@  Exe - net48 + net48;net8 LibSVMsharp.Examples.Classification LibSVMsharp.Examples.Classification Copyright © 2014 @@ -21,7 +21,7 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + diff --git a/LibSVMsharp.Examples.RapidPrediction/LibSVMsharp.Examples.RapidPrediction.csproj b/LibSVMsharp.Examples.RapidPrediction/LibSVMsharp.Examples.RapidPrediction.csproj index a267ba6..15f3328 100644 --- a/LibSVMsharp.Examples.RapidPrediction/LibSVMsharp.Examples.RapidPrediction.csproj +++ b/LibSVMsharp.Examples.RapidPrediction/LibSVMsharp.Examples.RapidPrediction.csproj @@ -1,7 +1,7 @@  Exe - net48 + net48;net8 LibSVMsharp.Examples.RapidPrediction LibSVMsharp.Examples.RapidPrediction Copyright © 2014 @@ -20,7 +20,7 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - +