set_key(key, "true")
bonus = 1
- if not package.getIsFOSS():
- bonus *= 0.1
PackageRelease.query.filter_by(id=release.id).update({
"downloads": PackageRelease.downloads + 1
such a state. Licenses that prohibit redistribution or modification are
completely banned from ContentDB and the Minetest forums. Other non-free licenses
will be subject to limited promotion - they won't be shown by default in
-the client, and their [score](/help/top_packages/) will receive a 10x penalty.
+the client.
Not providing full promotion on ContentDB, or not allowing your package at all,
doesn't mean you can't make such content - it just means we're not going to help
## Pseudo rolling average of downloads
-Every package loses 5% of its score every day.
-
-An open source package will gain 1 score for each unique download,
-whereas a non-free package will only gain 0.1 score.
+Every package loses 5% of its score every day, and will gain 1 score for each
+unique download.
This metric aims to be roughly equivalent to the average downloads.
multiplier = 1
if no screenshot:
multiplier *= 0.8
- if not foss:
- multiplier *= 0.1
score = multiplier * (max(downloads, forum_score * 0.6) + forum_bonus)
if self.getMainScreenshotURL() is None:
self.score *= 0.8
- if not self.license.is_foss or not self.media_license.is_foss:
- self.score *= 0.1
-
class MetaPackage(db.Model):
id = db.Column(db.Integer, primary_key=True)