#893572 tracker.debian.org: Debian Maintainer display: [dm] links empty, should be uppercase and use parentheses #893572
- Package:
- tracker.debian.org
- Source:
- tracker.debian.org
- Submitter:
- Paul Wise
- Date:
- 2021-09-22 04:48:08 UTC
- Severity:
- minor
- Tags:
On the libgit2 page there is a link next to the Maintainer: <small> [<a href="" title="">dm</a>] </small> https://tracker.debian.org/pkg/libgit2 I think these changes are needed: * the dm should be uppercase (possibly in smallcaps), because it is an acronym for Debian Maintainer * use an acronym tag, because DM is an acronym for Debian Maintainer * use "Debian Maintainer upload allowed" for the explanation title, inthat case the abbrev tag should be used instead of the acronym tag * use parentheses instead of crotchets/brackets to differentiate it from the DMD link a bit and because the PTS used that * the link should be removed or changed to dm.txt since that is the only source of information about DM upload permissions. Here is how these changes should look in the HTML: <small> (<a href="https://ftp-master.debian.org/dm.txt" title=""><abbrev title="Debian Maintainer upload allowed">DM</abbrev></a>) </small> Or: <small> (<abbrev title="Debian Maintainer upload allowed">DM</abbrev>) </small>
It would also be nice to have info on who approved the package. Updated version: <small> (<a href="https://ftp-master.debian.org/dm.txt"><abbrev title="Debian Maintainer upload allowed by Andreas Henriksson">DM</abbrev></a>) </small>
Hi,
I found where to make the change. But the information about
who gave the permission I do not know where it is at *debian.org.
In distro_tracker/vendor/debian/rules.py file:
_add_dm_entry function - extra.append({'display': 'dm'})
'link': "https://ftp-master.debian.org/dm.txt"
'description': "Debian Maintainer upload allowed by Andreas Henriksson"
Regards,
Herber
Hi, In https://ftp-master.debian.org/dm.txt behind each package, there's a fingerprint between parenthesis. This fingerprint is the fingerprint of the key who signed the addition of the DM right. So if you can map that back to a name, then you're good. There's some code doing that already with the help of the GPG keyring that we have configured, see verify_signature() in distro_tracker/core/utils/__init__.py (in particular ctx.get_key(...)). Cheers,
What I did seems to work. I added two tests for a function that I created - allowed_by(pkg). Initial lines are copy&paste from verify_signature (it does not work when passing a fingerprint to it). The function reads dm.txt file to get the fingerprint and gives it to gpg.Context().get_key(). One test added to return 'None'. One test added to return 'PTS Tests'. I edited these files: - distro_tracker/core/tests/tests-data/cache/dm.txt - one DM - distro_tracker/core/tests/tests_utils.py - distro_tracker/core/utils/__init__.py - distro_tracker/vendor/debian/rules.py - distro_tracker/vendor/debian/tests.py It is a first step. Should dm.txt file be downloaded and read once a day? (to update/save new info) 'class DebianContributor(models.Model)' has 'allowed_packages' and 'is_debian_maintainer' Or a dictionary. I set 'DISTRO_TRACKER_DATA_PATH' + 'cache/dm.txt' for now. But no downloads yet. Here is the forked repository: https://salsa.debian.org/hpfn/distro-tracker/commit/56b2a5d95f9ce4aa3eaee9e21668a45d54a79094 Regards, Herbert
I did a commit to use 'urlopen' and do not have to worry about it. Regards, Herbert
I note there is already code in RetrieveDebianMaintainersTask that downloads and processes dm.txt so perhaps that should be used.
Definitely, and you also don't want to use urlopen() in any web request, that doesn't scale... we would be hammering ftp-master to retrieve the same information over and over. And we have our own code to retrieve data over HTTP (get_resource_text) so we don't use urlopen(). Herbert, you need to come up with a good design before you get into coding. Here are some rough guidelines: 1/ you want to handle all the processing of the dm.txt file in RetrieveDebianMaintainersTask, you want to parse the "dd_fpr" variable that we already extract 2/ you want to come up with a way to store that data in the database, I would probably opt to add a JSONField to the DebianContributor model so that you can store a hash associating "package => granted_by". 3/ then you need to modify the template and the associated context to display that information I also don't know why you picked this bug report to start your journey into distro-tracker. It's not a trivial issue to fix and the added value is relatively low compared to other missing features. I took the time to highlight easy bugs with the newcomer tag, maybe you should start with some of those? https://bugs.debian.org/cgi-bin/pkgreport.cgi?dist=unstable;package=tracker.debian.org;tag=newcomer https://salsa.debian.org/qa/distro-tracker/issues?label_name%5B%5D=newcomer Cheers,
Ah, I see the bug was tagged as newcomer by Paul in fact. I suggest you first deal with all the requests in this bug except the last idea to display who approved the DM right... the rest should be relatively easy. Cheers,
Ok. No dm.txt. Thanks Paul and Raphael. Regards, Herbert Em sáb, 15 de jun de 2019 05:52, Raphael Hertzog <hertzog@debian.org> escreveu:
Hello, Good morning, We have gone through your samples from a partner and Here is our Order List. Please do bear in mind that we are very much in need of this order, quote your competitive prices. Kindly send the Order confirmation. Your early reply will be much appreciated. Best Regards, Maryanah Erwin. PT FINDORA INTERNUSA Jln Pahlawan 66 Kec. Arjawinangun 45162 CIREBON West-Java INDONESIA tel : +62 231 357334 fax: +62 231 357260 email: marketing@findora.com