@@ -110,7 +110,7 @@ cabalScore :: PackageDescription -> Bool -> Scorer
110
110
cabalScore p docum =
111
111
tests <> benchs <> desc <> homeP <> sourceRp <> cats <> boolScor 30 docum
112
112
where
113
- tests = boolScor 50 (hasTests p)
113
+ tests = boolScor 30 (hasTests p)
114
114
benchs = boolScor 10 (hasBenchmarks p)
115
115
desc = scorer 30 (min 1 (int2Float (S. length $ description p) / 300 ))
116
116
homeP = boolScor 30 (not $ S. null $ homepage p)
@@ -169,7 +169,6 @@ baseScore vers maintainers docs env tarCache versionList lastUploads pkgI = do
169
169
170
170
versS <- versionScore versionList vers lastUploads pkg
171
171
readmeS <- readmeScore readM isApp
172
-
173
172
return
174
173
$ scale 5 versS
175
174
<> scale 2 (codeScore documS srcL)
@@ -229,7 +228,7 @@ codeScore documentS haskellL =
229
228
boolScor 1 (haskellL > 700 )
230
229
<> boolScor 1 (haskellL < 80000 )
231
230
<> fracScor 2 (min 1 (haskellL / 5000 ))
232
- <> fracScor 2 (min 1 documentS / ((3000 + haskellL) * 1600 ))
231
+ <> fracScor 2 (min 1 ( documentS / ((3000 + haskellL) * 1600 ) ))
233
232
234
233
versionScore
235
234
:: [Version ]
@@ -252,10 +251,9 @@ versionScore versionList versions lastUploads desc = do
252
251
(_, deprecN, _) <- partVers
253
252
return deprecN
254
253
calculateScore :: [Version ] -> [CL. UTCTime ] -> [[Int ]] -> Scorer
255
- calculateScore [] _ _ = Scorer 118 0
256
254
calculateScore depre lUps intUse =
257
255
boolScor 20 (length intUse > 1 )
258
- <> scorer 40 (numDays (safeHead lUps) (safeLast lUps))
256
+ <> scorer 40 (numDays (safeHead lUps) (safeLast lUps) / 11 )
259
257
<> scorer
260
258
15
261
259
(int2Float $ length $ filter (\ x -> major x > 0 || minor x > 0 )
@@ -276,13 +274,16 @@ temporalScore
276
274
temporalScore p lastUploads versionList recentDownloads = do
277
275
fresh <- freshnessScore
278
276
tract <- tractionScore
277
+ -- Reverse dependencies are to be done
278
+
279
+ f <- packageFreshness
279
280
return $ tract <> fresh <> downloadScore
280
281
where
281
282
isApp = (isNothing . library) p && (not . null . executables) p
282
283
downloadScore = calcDownScore recentDownloads
283
- calcDownScore i = scorer 5 $ min
284
- ( (logBase 2 (int2Float $ max 0 (i - 100 ) + 100 ) - 6.6 )
285
- / (if isApp then 5 else 6 )
284
+ calcDownScore i = fracScor 5
285
+ ( (logBase 2 (int2Float $ max 0 (i - 32 ) + 32 ) - 5 )
286
+ / (if isApp then 6 else 8 )
286
287
)
287
288
packageFreshness = case safeHead lastUploads of
288
289
Nothing -> return 0
@@ -291,7 +292,7 @@ temporalScore p lastUploads versionList recentDownloads = do
291
292
-- Missing dependencyFreshnessScore for reasonable effectivity needs caching
292
293
tractionScore = do
293
294
fresh <- packageFreshness
294
- return $ boolScor 1 (fresh * int2Float recentDownloads > 1000 )
295
+ return $ boolScor 1 (fresh * int2Float recentDownloads > 200 )
295
296
296
297
rankPackage
297
298
:: VersionsFeature
0 commit comments