From 6e921dd85a4381455f1b49351d03d47041dd2a4c Mon Sep 17 00:00:00 2001 From: konard Date: Fri, 12 Sep 2025 20:18:57 +0300 Subject: [PATCH 1/3] Initial commit with task details for issue #143 Adding CLAUDE.md with task information for AI processing. This file will be removed when the task is complete. Issue: https://github.com/linksplatform/Interfaces/issues/143 --- CLAUDE.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..9319f7d --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,5 @@ +Issue to solve: https://github.com/linksplatform/Interfaces/issues/143 +Your prepared branch: issue-143-c347d836 +Your prepared working directory: /tmp/gh-issue-solver-1757697530605 + +Proceed. \ No newline at end of file From 7b2899f17e12cd9130d8b5938fd3eaae37a09834 Mon Sep 17 00:00:00 2001 From: konard Date: Fri, 12 Sep 2025 20:24:04 +0300 Subject: [PATCH 2/3] Fix all warnings in C# workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fixed CS8600 null warnings in InterfacesTests.cs by making interface variables nullable - Fixed deprecated set-output command warning by using GITHUB_OUTPUT environment file - Fixed NU5048 PackageIconUrl deprecation warning by switching to modern PackageIcon with local icon file - Updated all actions/checkout from v1/v3 to v4 for consistency - Fixed typos in workflow job names (pusnToNuget -> pushToNuget, publiseRelease -> publishRelease) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .github/workflows/csharp.yml | 20 +++++++++--------- .../InterfacesTests.cs | 20 +++++++++--------- .../Platform.Interfaces.csproj | 6 +++++- csharp/Platform.Interfaces/icon.png | Bin 0 -> 6569 bytes 4 files changed, 25 insertions(+), 21 deletions(-) create mode 100644 csharp/Platform.Interfaces/icon.png diff --git a/.github/workflows/csharp.yml b/.github/workflows/csharp.yml index a5b414d..48657b6 100644 --- a/.github/workflows/csharp.yml +++ b/.github/workflows/csharp.yml @@ -24,7 +24,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Test @@ -39,7 +39,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Publish NuGet package to GitHub Package Registry @@ -48,7 +48,7 @@ jobs: dotnet pack -c Release --include-symbols dotnet nuget add source https://nuget.pkg.github.com/linksplatform/index.json --name GitHub --username linksplatform --password ${{ secrets.GITHUB_TOKEN }} --store-password-in-clear-text dotnet nuget push **/*.nupkg --source GitHub --skip-duplicate - pusnToNuget: + pushToNuget: runs-on: ubuntu-latest needs: test steps: @@ -57,7 +57,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Read project information @@ -70,7 +70,7 @@ jobs: export REPOSITORY_NAME=$(basename ${{ github.repository }}) wget "$SCRIPTS_BASE_URL/push-csharp-nuget.sh" bash ./push-csharp-nuget.sh - publiseRelease: + publishRelease: runs-on: ubuntu-latest needs: test steps: @@ -79,7 +79,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Read project information @@ -106,7 +106,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Get changed files using defaults @@ -124,7 +124,7 @@ jobs: isCsFilesChanged='true' fi done - echo "::set-output name=isCsFilesChanged::${isCsFilesChanged}" + echo "isCsFilesChanged=${isCsFilesChanged}" >> $GITHUB_OUTPUT echo "isCsFilesChanged: ${isCsFilesChanged}" generatePdfWithCode: runs-on: ubuntu-latest @@ -136,7 +136,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Generate PDF with code @@ -156,7 +156,7 @@ jobs: with: dotnet-version: '8.0.x' - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true - name: Publish documentation to gh-pages branch diff --git a/csharp/Platform.Interfaces.Tests/InterfacesTests.cs b/csharp/Platform.Interfaces.Tests/InterfacesTests.cs index ecd9b4d..28739cd 100644 --- a/csharp/Platform.Interfaces.Tests/InterfacesTests.cs +++ b/csharp/Platform.Interfaces.Tests/InterfacesTests.cs @@ -10,16 +10,16 @@ public static class InterfacesTests [Fact] public static void BuildTest() { - ICounter c1 = null; - ICounter c2 = null; - ICriterionMatcher cm1 = null; - IFactory f1 = null; - IProperties p1 = null; - IProperty p2 = null; - IProvider p3 = null; - IProvider p4 = null; - ISetter s1 = null; - ISetter s2 = null; + ICounter? c1 = null; + ICounter? c2 = null; + ICriterionMatcher? cm1 = null; + IFactory? f1 = null; + IProperties? p1 = null; + IProperty? p2 = null; + IProvider? p3 = null; + IProvider? p4 = null; + ISetter? s1 = null; + ISetter? s2 = null; } } } diff --git a/csharp/Platform.Interfaces/Platform.Interfaces.csproj b/csharp/Platform.Interfaces/Platform.Interfaces.csproj index e420800..e453e5a 100644 --- a/csharp/Platform.Interfaces/Platform.Interfaces.csproj +++ b/csharp/Platform.Interfaces/Platform.Interfaces.csproj @@ -10,7 +10,7 @@ Platform.Interfaces Platform.Interfaces LinksPlatform;Interfaces;ICounter;ICriterionMatcher;IFactory;IProperties;IProperty;IProvider;ISetter - https://raw.githubusercontent.com/linksplatform/Documentation/18469f4d033ee9a5b7b84caab9c585acab2ac519/doc/Avatar-rainbow-icon-64x64.png + icon.png https://linksplatform.github.io/Interfaces Unlicense git @@ -36,4 +36,8 @@ + + + + diff --git a/csharp/Platform.Interfaces/icon.png b/csharp/Platform.Interfaces/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c1ad0cac5d8e94045982ba35f38e0a265f25f408 GIT binary patch literal 6569 zcmV;a8CK?rP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=TacI3Eng#Tj|UIN~a<=}aaci`pw3y@N)ds=ht zzT+3HP9rRJ8i}Pd7W<$90yQq()+*e#kNMpEP%lsDp2YDRz+xV@vbFWA~rya%)-ZbZl_;JxK z*WGdZ9;cg3G5YNbNAD+b*SQ*sZ+_mSME$zsiy=QNRB|)PT;R0-oQu2nZMq*ftK4}x zuJn$<$nnp==GPN{`uo#B=Lm1k+4>nP=H(S|rlHK~FISNecixz$8((LhgZ=eKi49~h z-7r@c*zI_R7|H#>R=9Z%HW@CBZ%Mnd-T?>^_fAa41u|f>3&~|?i}%Gj;#kQ~XXZXc zKgfVfCi%rIeGDO!oa%LNzEj-2)+hg*hF(ZSqEHH{p@2wMj45X7tpcHLQb;kSlv7DH zwbXOSF{hk!$>OPALWw1nTuP~>m0m-QHPu{8t+mzOd<)Q6GA*~#YHO``ZrWpKtj_hF z6T^=%;z%QpGU{lfPvA4-Of%0i>uj?xzrun7%*v~*y4vd7ZJ@N{PCM_i>u$Rruy(?U zC!KuCsi&R(nYA~oKWFXN%>8}V+?zFj6Q%3QkF0UJl#d~t=p-p;WXwlL#)~olpuKWt ztBcVqbIO@*K9~@aXO>CHSxy-vgK;~bj{D5rkIa3WH$!y)w|Vow%bZc_{)x;PrS41S z{+hSnWNr0Jx8Wv8RY*)>$UymVQTLVqXeWPmH1^*d;Qt5u=D72iX>7mFks9FTH0A6X zPVQ&Kt<$IFF+$#Jjk5vCS^F&Ca|y|&31TX(;ndPwtwLJzskCqo>91w?RE`^^>dVgV z!==EC5&+*lgmI4@;{9c&ZfYaNYh2F%vm&>#J2-C*(I;D zRu1ltd{XaqmF7}#Fu`m9e$YiujMEo8v)wNC;NYO0n;(mxKF*}?`B_GY>$p;=2iU~X z1~)frM1xxo+q>!QxLznpX4THjtfEmA&&S6H>dkV#t#v%h*(bS^R_Cogbj7ZmW-G*K z6U>~>&Sj;6qMVC3#Z|@`E@&ycu3bu7Ly_uvakEke!}ZhYAuG9?iPm|=d z0;#y-caA5QkyqZWlr?YiI~kt!w}>#$3z)8s%4GAIW00HzO2#J0G}cNEV7f>Gh)E2G zxh_YCel%|<~V{MjcoSfd&y}fmVJ6!B?sG~8$dJCBt0t?BnQ~Y7evS? zb6C;5p*w9rtz>@KvU1ais0CGbDI_Iw;zVmJW$W4X&1eWnAGfo3Ll@ULV?A>U{3%DW1%nS$gAwv6IeE z&V^u9Js<}br+b_|h$vXHt8|xqP4t@0fFYJ%9Nof?{$zc48q|e^Tmv)ucyW&;+$}M| zUTw!hsB=~(W@?lKrREYTqo4GrbOV(NU=M&bO+l-N5_bFzOzF@QLQ~BL+xFtSi^j7i zq2)GbAK$5otWuA&)#Lzh+9nfAtJg6}neRzdO5cUB>_vn{O#pSMMhkRPH5`h^%UNU_Iv6SwTC>=TKvJ-r8qi3&MK&U3b(b*@^^g2GeK8}8*zn6HhzeLt za9U9bv|&HSo4r2ge2SKIEw`u!@Ccj0J*rxw5>_6pjfw623nz({Y6=sImQ1GJ3;`A7 zEy2Opfi$Xa6*4bquSy=b&_%J#lu#qHMY5JM@hK<)PdvLr@)#xJB<$QX(d{cp`HHl! zM<$i|n0zt>Tms|rLZxI)-h$fR3fj)KZ7R92zC|Y*NvxT;ZFTA<%oy;8HlhC3=x1qr z>YZ*=i&+bam=djEr8-y=)qf^(sjmwzUX?W-*r5KsGelsUnNQ7xhn~T5Q%70E zmbEsz8~UiK&L^}NDJJ^p%oKBb1lFWF)zvWQ!+369)HEAqm9M}OvS@J9GI=xs%Ysli zLOplirnGNfQRdWFfZ=hya*z1JkQ}xCE_KKE%Z@A`%z3Sa-)aze6ZJ4a9z0ke zU>YceH26{idJWY@6{hWAX6`;QT_-a-Brw!PUbSOxOAQhd;71!7)U=hPxKPmk2408k zks(GUmm|uPPR4BLO6p?`L_Ptk1Q7S8!ZtKz zpO6t50K=(ii@lXx^dR7QqJ^j+MyxU3xH-Tljp*BWq$CZ=z+RL}&)j^VMl7C>7$8+J zT`Z4--=d0IPI2)jIG$MNR7pUIbM>R1-XKz(Au_CDK@;MOoO1^ z9OfFe?KS1b+e03y!aHAKVt#|0zu*WKhoXsz=9ZzmC{Hl!TF=}bdA#b=C{7>+9R?w$ z`}&*A*AT@=@|6-r}ctje_zGM4hlv zOb){z-Dugd^rdQ~du?mt+O#!7=p^)>{sFd8Oc;&};5sz0%9Y;9)Pji3DVI{b`PO8_ zuZ^fV(4>BN$HhdXZ50c2F_^6~H!1}w0wx)V&?>U+wY{`-yF@~UU00+%z+@$%k@G^&4O_t8j*~6kg{4AN9e3~=VDmV zCkmr9?HC;Srgat6q(8OZrJk{tE^6R*VF?aY$cE}UPqn3Ma+iqy!|MgUYRUZ+>C!-Q zVtPI!@e#h-MuXBoEFnz9hz?ACL$htD!09v37Dv0~yu#DxF|!$)N#X6c7Had?ol>!D)%b}engyTjZGZnbqF4mb9Z7Gp3+25gM?n1@hMc4%1U?DYrN6{ z;f*f$aH>O^KzWRZIsz6`8c+|dwuDmJLYu$(h;9Y8#8*>IgUY%j=Wb;QNcIxkM(v;y zMR4xgl)Dz@cdnx{6Ev}yraC6zur4f5^K%oNFr36HVD73Spac|w9E9N_j? z2gmOQ!fZRMUaf6)%ZyT9DFI^M536oFy6iQ*<+^K!7*)_RdI^z{0zRrL@P2}-jQgPH zbk8CgCU$fx5*Zs5Zdv(@Rwvm#j6R>&C;=!W9?dalVTy*MDuLX|X%8M-Oq%f^5tjgq zh0c|*pA1z+9(R7GJYjmHw}SuY`RLo@phY;Ovc#RXB=$CvGV8n{%UX%HYcSP!ee}Ze zD(zbk(tahlUNbg|{yS;(?!kpiyCoMhKkcF1HvIXcjp+EA0>2kD`z zVAYb3_S=v^W?@hZ@}kQFYr98zRY!Zn&Bgqt6=ahk*Umh%$m5`bQLnHpoutZ&hKqpZ z$&1KXg_+J%@=txwtY;Au^Tv`~4ly64ON2^MvG&pJHe@r@Dy2-F7nYHMUd6OOU8O|0 z?0*7q^Y2y030W!}vLi;A7+`Y*@fK6{HW*tK^YSXcYP|VcmZsC|f!6_>?;|Uyg z6;{>mM3DA+iV3;-h_H3ecv!r`V&RXmY5v6p7*@eiN)0$x!Yr$>kmQv& zUi-5S$+D3(_Po+pt~GT831~!@?m*B{`gLbS&BWd%g4KMGX;CFiltF_~qqJr+sL=E7 zWnnP8|J=JGMoGHbku5QVo|!l%c0p45(1XQtv^R7Grvc}gzMHQ~9_2aP%CjNA>4|n? zLWe8J6b8W)lgS)IP7Rsvb>T&y$&cr|GirJe`Ryjr-yhAty1=#3N5(=d5+2WG2W|dJ zs@N}^m}bnU8)03F=dkT#B%XZ%(K=$M3SN59LA;Z84;s3hixJ*@2eKGLViamdZswjn zywar`3h8C3LO&G)DM8?RoI;U+a&Zuqdi7L)%N@H;y)T!sI?(u*%~O%-vMf6c%U3<< zyW`J>Q*@H_W-%DcTn?Y`S9n#&WQ zyEU$V69EuFoc9$5#iJ~;KT_QA9@V2q-ekGpLWcxA{eq=JF90{&-jE!4lnu7={lFN( z0kO=GJ+^#(4u>n&QyFQGOIY<9_3)^_$Eb_2B+_WvacVc8zP$86?nuzR+;Q7Lxlg8W z88WHZ@`!$~tG;cCsPs@fmwEKgH1YRqwvy(vBm7LI0e{rWl+@XfNZ&8d>`m66PMN zwozNZ&(=kpEX>4Tx0C=2zkv&Mm zKpe$iQ>7v;4y_>KkfAzR5EXHhDi*;)X)CnqU~=gfG-*guTpR`0f`cE6RRjdyW16NwdUuy!hpQJZBTJ#7Q*aj}HJDR))Th80XiHPkdbi+g3yelq>OM2Uh@Hsf(6Ypmg4B_I$RJe zaOKaz8&&I&Fs21b%CqX~Rm{rjCcx*+Z0;w}BDJ>4Uw0I1yCtbmz?S$D24EqdwbXLn zO0M85a@Un7#A;pt!i_&`xw!{Jx%t1m5@xRCu@`N8xW!q?idR`59smsuHUj>j003lZ z>HDDqV6JAu&v&~&l0tCiw|*h1+k5b#3>TfpBWw$O z671|;DNFg&r_)pm7AzbufS$10d|&*@wJ5zibsLDSwZ5BMZyXCD&(a9PaMjtO{`sc=YI) zOdZ|QrcGzY3*byEPNz(TPmWJo0)7g8671?~fzcQUdVX&1Ue%sGf$;($@vx!@p9k$A z!SB6|eW3?Hy3x_`UQly0GtbfO-WRI#yy!J)haliwFmtogu!Wtt624LxSj(g&--rc} z+3X^q3w0^1E~XBJJTOuLlxXL@oGN)$AV~;gdNL#kdSqrcqO0p=00tNgeeimJMRxYL z@Ou9YXLhezh0=~YSnKP$k&cH$XE*_vn3i^*fQxtT$o79o0{J{(s$w@RY=5atYMNL81|ZZB z@G~pxJF3+|-wep1Zu(sQfI|9_#~M`;O%Q3EcmPNQX3TI9XlFrzN2;r<8*RR|R;o*~ zOP(oK-dxtm%5duoJAlDR&`}ikQ=_3|&bu5?X__CJZPo2dHe|0@b3HrV@njAxY)&rY zzNPr zgM%>_0eTj_J@||JZJfX5O=(BM|K%uj<*eNfruqgV!rl;5r7(zT8s_*xkrk{R@fm(G zYnFi`bu`~w&mCzo1Hj6ft)R$!&iZO}LFtDFA|+*0B(y~&`}XtkTmZOWEdH0c3=Yq(JuGXRXx-va Date: Fri, 12 Sep 2025 20:24:55 +0300 Subject: [PATCH 3/3] Remove CLAUDE.md - Claude command completed --- CLAUDE.md | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index 9319f7d..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,5 +0,0 @@ -Issue to solve: https://github.com/linksplatform/Interfaces/issues/143 -Your prepared branch: issue-143-c347d836 -Your prepared working directory: /tmp/gh-issue-solver-1757697530605 - -Proceed. \ No newline at end of file