From 3e08356e5b2646012bcd42f2a9bba317e7c68d46 Mon Sep 17 00:00:00 2001 From: Gusted Date: Sun, 27 Apr 2025 23:29:21 +0000 Subject: [PATCH] fix: use `linguist-generated` for language stats (#7685) - Adds code comment to explain behavior of the `linguist-generated` gitattribute. - Adjusts the code to ignore the file if `linguist-generated` is true. - Resolves forgejo/forgejo#7677 - Adds unit testing. Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7685 Reviewed-by: Earl Warren Co-authored-by: Gusted Co-committed-by: Gusted --- modules/git/repo_language_stats.go | 8 +++++++- modules/git/repo_language_stats_test.go | 9 +++++++++ .../git/tests/repos/language_stats_repo/index | Bin 553 -> 0 bytes .../tests/repos/language_stats_repo/logs/HEAD | 2 -- .../language_stats_repo/logs/refs/heads/master | 2 -- .../1e/ea60592b55dcb45c36029cc1202132e9fb756c | Bin 63 -> 0 bytes .../22/b6aa0588563508d8879f062470c8cbc7b2f2bb | Bin 200 -> 0 bytes .../34/1fca5b5ea3de596dc483e54c2db28633cd2f97 | Bin 172 -> 0 bytes .../42/25ecfaf6bafbcfa31ea5cbd8121c36d9457085 | Bin 116 -> 0 bytes .../4a/c803638e4b8995146e329a05e096fa2c77a03d | Bin 73 -> 0 bytes .../64/4c37ad7fe64ac012df7e59d27a92e3137c640e | Bin 53 -> 0 bytes .../6c/633a0067b463e459ae952716b17ae36aa30adc | Bin 371 -> 0 bytes .../8e/b563dc106e3dfd3ad0fa81f7a0c5e2604f80cd | Bin 201 -> 0 bytes .../8f/ee858da5796dfb37704761701bb8e800ad9ef3 | Bin 828 -> 0 bytes .../aa/a21bf84c8b2304608d3fc83b747840f2456299 | Bin 54 -> 0 bytes .../da/a5abe3c5f42cae598e362e8a8db6284565d6bb | Bin 64 -> 0 bytes ...-371b1f6c24df14da4898b22c00ff8fb55303ac76.idx | Bin 0 -> 1520 bytes ...371b1f6c24df14da4898b22c00ff8fb55303ac76.pack | Bin 0 -> 2748 bytes ...-371b1f6c24df14da4898b22c00ff8fb55303ac76.rev | Bin 0 -> 116 bytes .../tests/repos/language_stats_repo/packed-refs | 2 ++ .../language_stats_repo/refs/heads/.gitkeep | 0 .../repos/language_stats_repo/refs/heads/master | 1 - .../repos/language_stats_repo/refs/tags/.gitkeep | 0 23 files changed, 18 insertions(+), 6 deletions(-) delete mode 100644 modules/git/tests/repos/language_stats_repo/index delete mode 100644 modules/git/tests/repos/language_stats_repo/logs/HEAD delete mode 100644 modules/git/tests/repos/language_stats_repo/logs/refs/heads/master delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/1e/ea60592b55dcb45c36029cc1202132e9fb756c delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/22/b6aa0588563508d8879f062470c8cbc7b2f2bb delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/34/1fca5b5ea3de596dc483e54c2db28633cd2f97 delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/42/25ecfaf6bafbcfa31ea5cbd8121c36d9457085 delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/4a/c803638e4b8995146e329a05e096fa2c77a03d delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/64/4c37ad7fe64ac012df7e59d27a92e3137c640e delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/6c/633a0067b463e459ae952716b17ae36aa30adc delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/8e/b563dc106e3dfd3ad0fa81f7a0c5e2604f80cd delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/8f/ee858da5796dfb37704761701bb8e800ad9ef3 delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/aa/a21bf84c8b2304608d3fc83b747840f2456299 delete mode 100644 modules/git/tests/repos/language_stats_repo/objects/da/a5abe3c5f42cae598e362e8a8db6284565d6bb create mode 100644 modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.idx create mode 100644 modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.pack create mode 100644 modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.rev create mode 100644 modules/git/tests/repos/language_stats_repo/packed-refs create mode 100644 modules/git/tests/repos/language_stats_repo/refs/heads/.gitkeep delete mode 100644 modules/git/tests/repos/language_stats_repo/refs/heads/master create mode 100644 modules/git/tests/repos/language_stats_repo/refs/tags/.gitkeep diff --git a/modules/git/repo_language_stats.go b/modules/git/repo_language_stats.go index 46dfc0dbd9..ee4beb2f87 100644 --- a/modules/git/repo_language_stats.go +++ b/modules/git/repo_language_stats.go @@ -204,7 +204,13 @@ func (repo *Repository) GetLanguageStats(commitID string) (map[string]int64, err return nil, err } } - if !isTrue(isGenerated) && enry.IsGenerated(f.Name(), content) { + + // We consider three cases: + // 1. linguist-generated=true, then we ignore the file. + // 2. linguist-generated=false, we don't ignore the file. + // 3. linguist-generated is not set, then `enry.IsGenerated` determines if the file is generated. + if isTrue(isGenerated) || !isFalse(isGenerated) && enry.IsGenerated(f.Name(), content) { + log.Trace("Ignore %q for language stats, because it is generated", f.Name()) continue } diff --git a/modules/git/repo_language_stats_test.go b/modules/git/repo_language_stats_test.go index f18bfb3ba3..e3d8ba1f69 100644 --- a/modules/git/repo_language_stats_test.go +++ b/modules/git/repo_language_stats_test.go @@ -25,6 +25,15 @@ func TestRepository_GetLanguageStats(t *testing.T) { "Python": 134, "Java": 112, }, stats) + + stats, err = gitRepo.GetLanguageStats("95d3505f2db273e40be79f84416051ae85e9ea0d") + require.NoError(t, err) + + assert.Equal(t, map[string]int64{ + "Cobra": 67, + "Python": 67, + "Java": 112, + }, stats) } func TestMergeLanguageStats(t *testing.T) { diff --git a/modules/git/tests/repos/language_stats_repo/index b/modules/git/tests/repos/language_stats_repo/index deleted file mode 100644 index e6c02231716df89a12fa7ee496d2b8f681527d8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 553 zcmZ?q402{*U|<4b)`@?5BjE0&w7tK6p zuM^D4ecqi@Me>Yhu|AmgOQ(E+Edzh1Zep%(qHaNDNk)F2UIEy=s`YZph6fToAT-E4 zMggaAH1i6aRNwsiw(Ix##d1qe-w={9yXjic${>=JSeB@pk(!f}ub-QknWqQhgIo!6 zXZ0rqH9J8V4Rz;KqRbTl8&;N@my%xuH4|u#y8OSd*)SSx-W_R9H1n|gTNL79s7t}_ z)hnn3yE7!n)fMDi22%wiuD-3wcLefm|5{!6)%bnE(MJjX4QCNvWH3}P;99jv`iD=q zGD||Q{R!)m3WrawNi&g62P;bPF<)E%% 1632140318 +0100 commit (initial): Add some test files for GetLanguageStats -8fee858da5796dfb37704761701bb8e800ad9ef3 341fca5b5ea3de596dc483e54c2db28633cd2f97 oliverpool 1711278775 +0100 push diff --git a/modules/git/tests/repos/language_stats_repo/logs/refs/heads/master b/modules/git/tests/repos/language_stats_repo/logs/refs/heads/master deleted file mode 100644 index 9cedbb66a9..0000000000 --- a/modules/git/tests/repos/language_stats_repo/logs/refs/heads/master +++ /dev/null @@ -1,2 +0,0 @@ -0000000000000000000000000000000000000000 8fee858da5796dfb37704761701bb8e800ad9ef3 Andrew Thornton 1632140318 +0100 commit (initial): Add some test files for GetLanguageStats -8fee858da5796dfb37704761701bb8e800ad9ef3 341fca5b5ea3de596dc483e54c2db28633cd2f97 oliverpool 1711278775 +0100 push diff --git a/modules/git/tests/repos/language_stats_repo/objects/1e/ea60592b55dcb45c36029cc1202132e9fb756c b/modules/git/tests/repos/language_stats_repo/objects/1e/ea60592b55dcb45c36029cc1202132e9fb756c deleted file mode 100644 index 3c55bab91e0f9b29be108b34ab989900c6e68e08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63 zcmV-F0Korv0ZYosPf{>5WYE$pOU+BkFVf3OEK5|#$;?YH%`7g_g$SmmaB1lkAVhN# VfzpZTskYAfNkxfVTmV4s7y72Y9s2+P diff --git a/modules/git/tests/repos/language_stats_repo/objects/22/b6aa0588563508d8879f062470c8cbc7b2f2bb b/modules/git/tests/repos/language_stats_repo/objects/22/b6aa0588563508d8879f062470c8cbc7b2f2bb deleted file mode 100644 index 947feecea9cd7632d10dbd328570b6e121568d07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 200 zcmV;(05|`50V^p=O;s>5Fl8__FfcPQQP4}zEJ-XWDauSLElDkAkb9L7sU3P}ON<%Q zoP!FAMlXMt=0H_u>L%vuCh8VcmSp7T=@l?|onTJx^X{A~l4mrF^})1XI^_#&O$>lQ zAuF*gQ8yzsCnuj_)gtL1KHbVJ3BC3wtV=2!KDj2%gqoL|n3<|7 diff --git a/modules/git/tests/repos/language_stats_repo/objects/34/1fca5b5ea3de596dc483e54c2db28633cd2f97 b/modules/git/tests/repos/language_stats_repo/objects/34/1fca5b5ea3de596dc483e54c2db28633cd2f97 deleted file mode 100644 index 9ce337e070c1d098809ccef501f8c27db034ffe7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmV;d08{^X0iBLPZUZ3<0DI;YKDW}!uz@lSBAWa>ocfAumcK@t ab2Pb4J;3|2L;Hbi|ApLTB=Z1IMNSlufK+Gz diff --git a/modules/git/tests/repos/language_stats_repo/objects/42/25ecfaf6bafbcfa31ea5cbd8121c36d9457085 b/modules/git/tests/repos/language_stats_repo/objects/42/25ecfaf6bafbcfa31ea5cbd8121c36d9457085 deleted file mode 100644 index ff3b642734150dc12c49eb637fb6c9322012ae8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116 zcmV-)0E_>40ZYosPf{>6G-4^kN#UyIQh-Vomn4<| zRg~ptrYPhlX69)GmlS2@rANmqBo?I?YjP<7l_~^R7MG;v>gAV~=oJ8EOLFowl)$Db Wl!J^@RMNEOQmEys5XHZsF2+7DSRsf9V=y!@Ff%bx$Vkn}$=55WWbit{oZRQ#IaMUjXcp^(X}@&J L7uW&-FaZx{HjWkw diff --git a/modules/git/tests/repos/language_stats_repo/objects/6c/633a0067b463e459ae952716b17ae36aa30adc b/modules/git/tests/repos/language_stats_repo/objects/6c/633a0067b463e459ae952716b17ae36aa30adc deleted file mode 100644 index 873cb7187dfe5934941716569ab1b76fe181f23d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 371 zcmbKk9!7p(QRo{{}nsGxXNbMQs3M+H9}J7S6z%X3#Q{iUwa zRNub1`N4eUf0FmE?yztv2;Rr8uYbI{vS7Zh%ES;sX%Ht8!VzwAmpaI=z+|UClf0yQ=qDXq493 z=D*s8n^Px>@7w*m(#A@Gq0y~T*NTI!_WGvlnVavR=sR_@MApW(IgMog$tW_eZnk!eRx zWvYChk*VC{Ydlr`%wNO%vXZ|;$_h`qOnoV*yE3n5>4jNq)qC$M{9^EN2%iT41YV(| diff --git a/modules/git/tests/repos/language_stats_repo/objects/8e/b563dc106e3dfd3ad0fa81f7a0c5e2604f80cd b/modules/git/tests/repos/language_stats_repo/objects/8e/b563dc106e3dfd3ad0fa81f7a0c5e2604f80cd deleted file mode 100644 index f89ecb7d607f53fa5bbeb8886a50a77b8ab0a69b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 201 zcmV;)05<=40V^p=O;s>5Fl8__FfcPQQP4}zEJ-XWDauSLElDkAxV3ck2>vP({N3_wi~K4Q#UbJH&M5svLquvPp^Q%>jZOhpLgd}kvyYWtPiIB(kWkHYhnNd z3R#I|iMko7IXU?Zs}@QB@aa}&N$9mdVO>(;@X0l4Ce*y##LPUsvedkk{31P&4hARH zH^08^`h9+}+|tuGgk;Qax)!uT420MTH8RD=d~N+RuLDB&>mn~zO?oU`lfnl80FYD{ D5k*{W diff --git a/modules/git/tests/repos/language_stats_repo/objects/8f/ee858da5796dfb37704761701bb8e800ad9ef3 b/modules/git/tests/repos/language_stats_repo/objects/8f/ee858da5796dfb37704761701bb8e800ad9ef3 deleted file mode 100644 index 0219c2d565cdf6892d4633f715f275b2f5c600ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 828 zcmV-C1H=4y0iBe~&Z9;Ug|p@}C2#6@z2pmiqT0k7kAQwYAi$x~e#&o(ttU&XbNT-m9 zCtP#`kXksP7YIIki@O&584sA<{+-4xj+5V8g#QAJz_AQZbBqW`nxSbT{c#kd|L4y8 zd@OVD_0PzvW;nppJa9HNM+z<{^@mOX0+hb-mL*A6atR(vRi(!r%l5ZbLJ$8Cn1knR z=x7mxp3V=_<6vYmFDZHL|I`W4(?w8A)J~64Gqb5Pon&%`_GVYK%$VRLdfU$S%$P|) zAKS=l$i4nNMs*Z5cQMs?n*ha5W_i->Mr?>gxs}-+y_nIW#;4fM5wzwJaqnq4 zZ{T@bo%S!XN`%|=a7hAqxf|g`^31_`E=a=iJs{ni9v){;y!(|k&Dn#LrnoyX)ARX$ z*AexIPDwD~aVpJ2L;wM*75kPWuSybfo1NelmPW*EbZ0$J7UhPO4%tFqDMMQ*iv7gU zdWEHsJs_1nL5ToI=yQju3$^IoOJ3$n3W4t&z-<#Sf-QKLheSJ2w1mUrD=-ado6 zM79Zy>?+7b;ZQ7cWGOQHRngi8&sVJC54vHr`3X{7iK}4A#%Qa zdT4r?y*xPONEYl%L<0=%9XD~D{Ff%bx$W6@5)5}UMOJs0Tee>(vuHWYu%Pl>9LrBK# MrfWef0A_I#MnPW|jsO4v diff --git a/modules/git/tests/repos/language_stats_repo/objects/da/a5abe3c5f42cae598e362e8a8db6284565d6bb b/modules/git/tests/repos/language_stats_repo/objects/da/a5abe3c5f42cae598e362e8a8db6284565d6bb deleted file mode 100644 index 9d4d4b1a04fe12cba1b27260a5f9f935e1b05641..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64 zcmV-G0Kflu0ZYosPf{>5V$jknOU+BkFVf3OEK5|#$;?YH%`7g_g$SmmaB1lkAVhN# WfzpZTskQ-?B^mj7TwDNKei)XuX&k8l diff --git a/modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.idx b/modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.idx new file mode 100644 index 0000000000000000000000000000000000000000..186136cb126104a88a2d5b178914b1c1dbc86f17 GIT binary patch literal 1520 zcmexg;-AdGz`z8=0|gj?79(SjTaYm`kWUU~0qP?MvjX*D!)!ot5N4+l<^Ylj^$n@L~4iL*%D*MH0Pj#qS4FW zr8!F5R$ zGWSUHQy<+;ZN_Kyr#q>>`Soqr@AHf0mY%*LBx82dwV>7G6w{Z=RYtS@S3Ia(9Tt`( zqTh4b>jZOhpLgd}kvyYWtPiIB(kWkHn{d;H@4#%U!|Uz`I!@O8QgZLmj8!Q<=4D>SRlRQ z1;g5TpQm09h}Ydz{Dk}Y{1(TAz;&%JU-7P5B>lsuTbU)H*ZzccNrl5F*QA-J4z2$? zW&NeM0_L$<-GzbD8>GagZ!KN@_~;j%b&-8$dR@KSG+a}!?S59Z?fsd3PbTes{r=VtGJ$26Jio9F_Ybw>)NS(qZ`DzcrY7O<6^|^kH*Z{o8Uv P9(ikby)sPtbZa62Y)$41 literal 0 HcmV?d00001 diff --git a/modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.pack b/modules/git/tests/repos/language_stats_repo/objects/pack/pack-371b1f6c24df14da4898b22c00ff8fb55303ac76.pack new file mode 100644 index 0000000000000000000000000000000000000000..046061c688b93c0f08c8aef52e1d1e5470de40cf GIT binary patch literal 2748 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 literal 0 HcmV?d00001 diff --git a/modules/git/tests/repos/language_stats_repo/packed-refs b/modules/git/tests/repos/language_stats_repo/packed-refs new file mode 100644 index 0000000000..63e01583a4 --- /dev/null +++ b/modules/git/tests/repos/language_stats_repo/packed-refs @@ -0,0 +1,2 @@ +# pack-refs with: peeled fully-peeled sorted +95d3505f2db273e40be79f84416051ae85e9ea0d refs/heads/master diff --git a/modules/git/tests/repos/language_stats_repo/refs/heads/.gitkeep b/modules/git/tests/repos/language_stats_repo/refs/heads/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/modules/git/tests/repos/language_stats_repo/refs/heads/master b/modules/git/tests/repos/language_stats_repo/refs/heads/master deleted file mode 100644 index e89143e56b..0000000000 --- a/modules/git/tests/repos/language_stats_repo/refs/heads/master +++ /dev/null @@ -1 +0,0 @@ -341fca5b5ea3de596dc483e54c2db28633cd2f97 diff --git a/modules/git/tests/repos/language_stats_repo/refs/tags/.gitkeep b/modules/git/tests/repos/language_stats_repo/refs/tags/.gitkeep new file mode 100644 index 0000000000..e69de29bb2