From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
This project page in other languages:

Shortcut: COM:BRFA

Bot help and list · Requests to operate a bot · Requests for work to be done by a bot  · Requests for batch uploads

If you want to run a bot on Commons, you must get permission first. To do so, file a request following the instructions below.

Please read Commons:Bots before making a request for bot permission.

Requests made on this page are automatically transcluded in Commons:Requests and votes for wider comment.

Requests for permission to run a bot[edit]

Before making a bot request, please read the new version of the Commons:Bots page. Read Commons:Bots#Information on bots and make sure you have added the required details to the bot's page. A good example can be found here.

When complete, pages listed here should be archived to Commons:Bots/Archive.

Any user may comment on the merits of the request to run a bot. Please give reasons, as that makes it easier for the closing bureaucrat. Read Commons:Bots before commenting.

XplusMapBot (talk · contribs)[edit]

Operator: Xplus1 (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought: This bot is used to update versions of svg maps about ongoing events, if needed. It is a new account and would need allowance to upload new versions of existing files originally uploaded by my account.

Automatic or manually assisted: Automated / monitored. Plausibility checks and some hard coded time/case limits are included.

Edit type (e.g. Continuous, daily, one time run): Daily for multiple maps, if new data would (more or less) visibly change the map - currently 0.1% for cumulative all-time cases.

Maximum edit rate (e.g. edits per minute): In normal operation, one upload per map and day (week for some). Bugfixes and adaptations may require unplanned updates. I have limited uploads to 1 file per minute.

Bot flag requested: (Y/N): N, like "Not sure" - it will not do mass edits, just daily/weekly updates on a handful of maps.

Programming language(s): PHP-cli using mediawiki-api

x+1 (💬) 17:18, 5 July 2020 (UTC)


Palmleaf Bot (talk · contribs)[edit]

Operator: Palmleaf Bot (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought: Batch upload of Balinese Lontar from Internet Archive to Commons, in connection with active project grant

Automatic or manually assisted: Automatic, supervised (will test with a few items on Beta Commons first)

Edit type (e.g. Continuous, daily, one time run): One time run

Maximum edit rate (e.g. edits per minute): Every 5 seconds

Bot flag requested: (Y/N): N

Programming language(s): Python (small script that invokes pywikibot)

Palmleaf Bot (talk) 23:53, 4 July 2020 (UTC)

You appear to have very very little experience on Commons so I would be concerned about this request. Thanks --Herby talk thyme 11:45, 5 July 2020 (UTC)

CompanjeBot (talk · contribs)[edit]

Operator: Companje (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information) Rick Companje (User:Companje) from Institution:Het Utrechts Archief (

Bot's tasks for which permission is being sought: Upload Images: Bot will be used to Upload Images (approx 150.000 with open license from The Utrecht Archives).

Automatic or manually assisted: The Bot is manually assisted. I create CSV files and run a Python script (Commons:Img2Commons) to upload using the API.

Edit type (e.g. Continuous, daily, one time run): It will operate intermittently. Sometimes during work hours, sometimes at night. It depends on the hours I'm available.

Maximum edit rate (e.g. edits per minute): I hope I'm allowed to upload 10.000 to 15.000 images per 24 hours. 7 to 10 images per minute.

Bot flag requested: (Y/N): Y

Programming language(s): Python (Commons:Img2Commons) Companje (talk) 17:58, 30 June 2020 (UTC)

  • Please use language templates for photographer and notes fields. Please also consider better edit summary, for example, Uploading file from Het Utrechts Archief: <URL>. --EugeneZelenko (talk) 14:02, 1 July 2020 (UTC)
Thanks, I added the language templates and improved the summary as you suggested. [1] --Companje (talk) 19:39, 1 July 2020 (UTC)
Please remove square brackets from URL in edit summary. --EugeneZelenko (talk) 13:37, 2 July 2020 (UTC)
Hallo Rick, looks fine, could you please remove the line starting with a blank in front of {{Het Utrechts Archief}} as that affects formatting? [2] Thank you. Groet, --Achim (talk) 08:36, 5 July 2020 (UTC)

INaturalistReviewBot (talk · contribs)[edit]

Operator: AntiCompositeNumber (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought: Automatically license review files from iNaturalist. A detailed description is available at User:iNaturalistReviewBot/Docs, but in summary, the bot checks files in Category:iNaturalist review needed against the corresponding iNaturalist images using a SHA-1 hash, then license reviews them as appropriate using {{INaturalistreview}}.

Automatic or manually assisted: Automatic

Edit type (e.g. Continuous, daily, one time run): Continuous

Maximum edit rate (e.g. edits per minute): 1 epm

Bot flag requested: (Y/N): Preferred (for API reasons), but edits will not be marked as bot

Programming language(s): python

{{INaturalistreview}} is protected by Special:AbuseFilter/70. Because iNaturalistReviewBot does not yet have LR, I am unable to make a test run. Logs from a simulated run (without wikitext changes) is available at I will also make some example edits from my main account, but they won't be fully representative of an actual run. I am unsure of what the correct process is to get LR rights for the bot. AntiCompositeNumber (talk) 16:56, 25 June 2020 (UTC)

AntiCompositeNumber (talk) 17:27, 25 June 2020 (UTC)


  • @AntiCompositeNumber: I think it is a super good idea to have a bot checking the files. So thank you for your request! I have 2 comments:
    1. When file does not match would it be possible to mention the license in the edit summary? I think the flickrreview bot does the same (size not found but the license is cc-by-sa-4.0) so we have that stored in case uploader change the license before a human check and find out it is just a crop.
    2. If license can be changed on inaturalist then there is a chance that the license was valid when uploaded. If the file was uploaded months or years ago I do not think we should add a copyvio warning on users talk page. Perhaps we should let a human do a review in case it is possible to verify the license via web archive.
Both are only relevant if it is possible to change the license. --MGA73 (talk) 18:40, 25 June 2020 (UTC)
@MGA73: For the license in the edit summary, generally no. Most links to iNaturalist are through /observations/<id> links, which can represent multiple images at multiple licenses. I could special-case it for /photos/<id> links and single-photo observations if you think it would be useful, but I don't see the benefit. As for old files, what is your suggestion to do instead? Still tag it copyvio, just don't warn? Tag it something else? (yes, iNaturalist does allow license changes.) --AntiCompositeNumber (talk) 01:44, 26 June 2020 (UTC)
@AntiCompositeNumber: okay then lets just forget first part (adding license in edit summary if size is not found).
For old files I think perhaps a "no permission" because that will give uploader a chance to check the uploads. What I worry is that a good user upload free files but because license reviewers are busy it takes 8 months to review the files and now the license is changed. The good user suddenly get 50 copyvio warnings on their talk page and risk a block. --MGA73 (talk) 07:01, 26 June 2020 (UTC)
@MGA73: What do you think the cutoff age should be? --AntiCompositeNumber (talk) 18:06, 26 June 2020 (UTC)
@AntiCompositeNumber: A week, a month. You choose :-) --MGA73 (talk) 18:08, 26 June 2020 (UTC)
  • @AntiCompositeNumber: I've added the bot to the image-reviewer group for one week (the closing 'crat should make the rights permanent when they add the bot flag; you can ping any reviewer or admin if they forget). Please review the above suggestions before making any edits. Best, --Mdaniels5757 (talk) 19:43, 25 June 2020 (UTC)
  • I went with 180 days (6 months) as the age for old files. A 30-edit test run is complete, some highlights:
A few notes about future expansion:
  • @Josve05a: asked me off-wiki if the bot could also add {{INaturalist}} when it reviews files. The answer is yes, and I may add that to the bot later without a new request.
  • The bot currently only uses SHA1 sums to compare images. I tried to use SSIM scores as well for a fuzzier comparison, but the pyssim library caused issues. If I can find a better implementation for that or another reliable fuzzy image comparison method, I may implement it without a new request.
  • With fuzzy comparison, I may be able to identify images that are only downscaled from the original and upload the original size. I would open a new request for that.
  • I could also copy taxon information to Structured Data depicts statements. I would also open a new request for that.
AntiCompositeNumber (talk) 21:47, 27 June 2020 (UTC)
  • Symbol support vote.svg Support I checked the edits (except the deleted ones but I hope the deleting admin did that). It looks good to me. There was a few files it could not review (error). The images look the same to me but perhaps uploader made a tiny change. --MGA73 (talk) 19:06, 30 June 2020 (UTC)
  • @AntiCompositeNumber: Looks good to me. I'd also add one thing to your list: adding archives. I've just added an |archive= parameter to {{iNaturalistreview}}. I see you're using Python; waybackpy is very easy to add to an existing bot (as in, would probably take adding fewer than 10 lines of code). Best, --Mdaniels5757 (talk) 19:18, 1 July 2020 (UTC)

MDanielsBot (talk · contribs) 4[edit]

Operator: Mdaniels5757 (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought: Update global and local user counts on an opt-in basis. (May also do upload counts at some point) Only runs on subpages of User:MDanielsBot/GlobalEC and User:MDanielsBot/LocalEC.

Automatic or manually assisted: Automatic, unsupervised

Edit type (e.g. Continuous, daily, one time run): Hourly

Maximum edit rate (e.g. edits per minute): Maxlag-limited, but about 1x/10s

Bot flag requested: (Y/N): Already flagged

Programming language(s): Python ( on GitHub)

Mdaniels5757 (talk) 02:19, 30 May 2020 (UTC)

Per Krd, permission is not required. Unless there are any objections, please close this request as unneeded. --Mdaniels5757 (talk) 15:50, 30 May 2020 (UTC)
No general concern, but hourly seems excessive. Daily in the night seems appropriate. Also the update should be skipped, if there is no change in numbers. --Schlurcher (talk) 18:47, 30 May 2020 (UTC)
You should also not track the number of edits of your bot with your bot account. It generates a vicious circle, where without activity the bot is updating it's own counter and thus generates new edits and thus has to update the counter again. If you want to keep monitor your own edits, you should built in a minimum number of additional edits before the counter is updated. Personally suggesting minimum update of 100 and daily update. --Schlurcher (talk) 18:52, 30 May 2020 (UTC)
Thanks for the feedback. The bot does not update if there are no changes. I've made the bot run every 6 hours. It will only update users every 20 edits and itself every 100. --Mdaniels5757 (talk) 21:09, 30 May 2020 (UTC)
I think that's still excessive, once per week should be enough IMHO. --Krd 16:47, 1 June 2020 (UTC)
I want it a bit more often than once a week. It will now update every 100 edits, and will check to see if it may update once per day. --Mdaniels5757 (talk) 15:39, 3 June 2020 (UTC)
Is there anybody who want to opt-in except yourself? Is the data really required onwiki, or can you collect the numbers into a local file for your own information? Isn't the data visible at CentralAuth sufficient? (To be clear, I'm not opposed if there is a reasonable use case, I just don't see any from the above request.) --Krd 07:01, 7 June 2020 (UTC)
I have no clue if others want to use it, but I like to be able to see it on-wiki myself. The real use-case is transclusion to userboxes and the like, like on my userpage. TBH, I started developing this for enwiki (because there they have things it could be more useful for), and added commonswiki functionality later because it already had to pull some needed data. --Mdaniels5757 (talk) 15:30, 7 June 2020 (UTC)

MDanielsBot (talk · contribs) 3[edit]

Operator: Mdaniels5757 (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought: Assisting with the License Migration by marking files as redundant, not eligible, or eligible.

Details (as of now, may add additional checks in the future):

  1. Check if migration is redundant:
    1. If the migration would be redundant (i.e. if the image is licensed under CC-BY-(SA-)3.0 already), mark it as such.
  2. Check if the image is ineligible for migration:
    1. If the EXIF data shows that the image was taken after the deadline for migration eligibility (Aug. 1, 2009), mark it as ineligible for migration.
    2. If there is a {{Original upload date}} template showing it is was uploaded after the deadline, mark it as ineligible.
    3. If there is a wikitable with an original upload log showing it was originally uploaded after the deadline, mark it as ineligible.
  3. Check if the image is eligible for migration:
    1. If there is a {{Original upload date}} template showing it was uploaded before the deadline, mark it as eligible.
    2. If there is a wikitable with an original upload log showing it was originally uploaded before the deadline, mark it as eligible.

Automatic or manually assisted: Automatic

Edit type (e.g. Continuous, daily, one time run): One time run, then as needed

Maximum edit rate (e.g. edits per minute): Worst-case, 1x/5sec. (uses maxlag).

Bot flag requested: (Y/N): Already flagged

Programming language(s): Python (source available at github)

--Mdaniels5757 (talk) 20:37, 22 May 2020 (UTC)


Thanks for making the request. How do you plan to exclude users that have previously opted out of license migration back in the days when the campaign was active? --Schlurcher (talk) 15:55, 23 May 2020 (UTC)

@Schlurcher: That's a good question. I'm not aware of any central list, and the only person I was aware of of who opted out was Infrogmation (I note that User:Schlurcher/Lizenz is ineligible for migration because it is v1.2 only, and, even if it was v1.2+, migration would be redundant). There are a couple of things I could do.
1) Create some sort of central list, and have the bot make sure no uploader or person linked to on the page is on it. Requires some effort, but ultimately would work.
2) Do nothing. The opt-out provision "exists at the discretion of the local community which may impose restrictions upon it (such as time limits on when the request can be made), or even prohibit the opt-out option." ([1]), and "copyright holders wishing to exercise this option should act in an expeditious manner" ([2]). They've had a decade, so at this point I think that it could be fair to say that they have not acted in an "expeditious manner" if they haven't opted their photos out yet.
Any other ideas, or thoughts as to what I should do? --Mdaniels5757 (talk) 16:37, 23 May 2020 (UTC)
Thanks for diving into this discussion. It's a long time ago, but I it has been clear to me that Commons has allowed opting out (the option is still a parameter on Commons:License Migration Task Force/Migration, so it is fair to say that the possibility was granted). The problem was that there was no central coordination of this. There are a couple of people that opted out of the process. You might have guessed, that I was one of them. Also Ralf Roletschek (talk · contribs) comes in mind. People have dealt with this differently. I have first started to revert all these changes, but the updates kept coming, so I subsequently re-licensed all my pictures form v1.3 or later to v1.2 only to circumvent the re-licensing. As I understand, Ralf, has stopped uploading full resolution pictures to commons due to this. Others have used the opt-out parameter as described on the task force page. I'm currently most concerned that we re-visit this re-licensing without respecting prior decisions. Especially users might have reverted the edits 10 years ago and have left since then. And we now start all over again, not giving them the option to opt-out again.
I'll try not to be super complicated, but some kind of safeguard seems needed. Do you think there is a cutoff-date by when we can consider that the first round of re-licensing was considered complete? We could then modify your proposal:
  1. Check if the image is eligible for migration:
    1. If file was uploaded to commons after the cutoff and there is a {{Original upload date}} template showing it was uploaded before the deadline, mark it as eligible.
    2. If file was uploaded to commons after the cutoff and there is a wikitable with an original upload log showing it was originally uploaded before the deadline, mark it as eligible.
Seems feasible to implement, and you would still be able to check once all files that have been recently transferred from other wikis (the intention of the request) as well as not change, potentially again, files that existed during the first re-licensing activity. I think you should also keep a log of all files re-licensed and only touch them once. --Schlurcher (talk) 18:12, 25 May 2020 (UTC)
Sorry, I'm en-0. Da du mich genannt hast... Ich habe mal ein schlechtes, winziges und unwichtiges Foto als Beispiel. Ich habe das 2004 klipp und klar unter GFDL hochgeladen, nicht mehr und nicht weniger. Es ist ein Unding, wenn das dann Jahre später mit einer Lizenz versehen wird, die es zum Zeitpunkt der Veröffentlichung überhaupt noch nicht gab. Nach kontinentaleuropäischem Recht ist das nicht zulässig, man kann keinem Vertrag zustimmen, deren Inhalt man nicht kennt - und eine Lizenz ist ein Vertragsangebot. Das Ganze ist vollkommen in die Hose gegangen. Bei 25% Ablehnung der Umlizenzierung hätte es ein Opt-In geben müssen. --Ralf Roletschek 18:36, 25 May 2020 (UTC)
Danke, für deinen Beitrag. Sobald ich etwas mehr Zeit habe werde ich sowohl die Diskussion hier als auch deinen Beitrag übersetzten, sodass wir gemeinsam einen Weg finden können und du beitragen kannst, falls du möchtest. --Schlurcher (talk) 21:20, 25 May 2020 (UTC)
Ralf has highlighted a picture that he uploaded Example that was subsequently migrated and he switched it to opt-out. Ralf has also highlighted that he rejects the complete license migration philosophy as a whole and that it may violate local law.
Could you please confirm that you will ignore all picture that have the opt-out parameter? I think you do. --Schlurcher (talk) 19:10, 30 May 2020 (UTC)
Belated, but the answer is "of course, but I (mostly) don't need to". The bot will only run on files in Category:License migration candidates or Category:License migration needs review, but if there is an opt-out parameter, the file shouldn't be in those categories (it'd be in Category:License migration opt-out, which the bot doesn't touch). I just thought of one case where that could be a problem (if there are two templates, one with the opt-out parameter and one without) and I'll add a check for that. --Mdaniels5757 (talk) 18:44, 1 July 2020 (UTC)

Section break[edit]

OK, I have a plan for opt-outs:

I will make a list of those who wish to opt out at User:MDanielsBot/LROptOut. I will also put onto it all users who (a) uploaded more than 10 files in Category:License migration opt-out or (b) were linked to in pages in Category:License migration opt-out more than 10 times. I made 10 a minimum to make the list smaller, and keep it to people who are likely to have files pending migration. I will reach out to active users on the list below to make sure they want to opt out. If a user adds their name to the "manual" section of User:MDanielsBot/LROptOut, I will have the bot mark their file as "opt-out". If I add a user's name to the "automatic" section (which I will get from the table below, once I clean it up), the bot will skip the file. If you're curious, here is the table (ignore the id column):

Extended content
| id  | link                                 | count |
|  10 | User:Infrogmation                    | 32669 |
|  13 | User:Fir0002                         |  2215 |
|  47 | User:FloraUploadR                    |  1577 |
|  42 | User:Gone Postal                     |  1084 |
|  29 | User:Slowking4                       |  1044 |
|  43 | User:Kogo                            |   977 |
|  63 | User:MGA73bot2                       |   926 |
|   8 | User:EvaK                            |   830 |
|  52 | User:Smial                           |   304 |
|  22 | User:Erin Silversmith                |   279 |
|  48 | User:Olei                            |   276 |
|  46 | User:Erkan Yilmaz                    |   245 |
|  18 | User:Rotatebot                       |   241 |
|  26 | User:Rillke                          |   187 |
|   5 | User:Ralf Roletschek                 |   175 |
|  15 | User:File Upload Bot (Magnus Manske) |   162 |
|  37 | User:Btr                             |   153 |
|   2 | User:Muhammad Mahdi Karim            |   118 |
|  32 | User:Toutíorîx                       |    97 |
|  49 | User:Rillke/Spice                    |    91 |
|  50 | User:Lensovet                        |    88 |
|  99 | User:NickK                           |    82 |
|  60 | User:Asbestos~commonswiki            |    58 |
| 119 | User:Kristo~commonswiki              |    50 |
| 118 | User:Kristo                          |    49 |
| 112 | User:Mark                            |    45 |
|  67 | User:Marcela                         |    41 |
|  11 | User:Kabelleger                      |    40 |
| 156 | User:MER-C                           |    31 |
|  66 | User:Stefdn                          |    31 |
| 205 | User:Dodo von den Bergen             |    26 |
|  40 | User:Lezo                            |    25 |
| 434 | User:Skyfi                           |    23 |
|  94 | User:Leyo                            |    22 |
|  58 | User:BetacommandBot                  |    17 |
|  81 | User:Andreas Plank                   |    15 |
| 362 | User:Nmedard                         |    14 |
|   1 | User:FastilyClone                    |    14 |
|  31 | User:Charles48                       |    14 |
|  74 | User:THOR07                          |    14 |
|  12 | User:Petar Marjanovic                |    13 |
| 132 | User:Chamaeleon~commonswiki          |    12 |
| 635 | User:Rfc1394                         |    12 |
|  70 | User:Magdalens                       |    12 |
|  95 | User:Yellowcard                      |    11 |
45 rows in set (0.00 sec)

Best, --Mdaniels5757 (talk) 18:23, 26 May 2020 (UTC)

Seems a reasonable approach. Could you please make the categories of User:MDanielsBot/LROptOut self explanatory and explain there meaning on the page as well. Thank you. For users like User:Kristo~commonswiki, you should exclude both User:Kristo as well as User:Kristo~commonswiki. --Schlurcher (talk) 19:10, 30 May 2020 (UTC)
@Ralf Roletschek:: Mdaniels5757 schlägt nun vor, dass alle weiteren Dateien von Nutzern, die bereits mehr als 10 Mal eine Datei als opt-out generell von seinem neuen Durchlauf der Migration ausschließen wird. Damit würde der Bot keine deiner Bilder mehr migrieren. Wäre dies für dich ein akzeptabler Kompromiss? Das adressiert natürlich in keiner Weise deine Bedenken bezüglich der Migration im Allgemeinen, aber die Migration wurde ja auch schon vorher so durchgeführt. Mein Hauptaugenmerk ist nun daran, dass Personen, die schon einmal widersprochen haben jetzt nicht nachträglich Zwangsmigriert werden, nur weil Sie nicht mehr aktiv am Projekt beteiligt sind. --Schlurcher (talk) 19:10, 30 May 2020 (UTC)
Für mich incl. meinen Vorgängeraccount Marcela wäre das ok. Ohne Rücksprache glaube ich, das auch für Fir0002 und EvaK sagen zu können, sie sind beide schon lange inaktiv. Beide haben ihre Mitarbeit unter anderem wegen der Umlizenzierung eingestellt. Was ist mit den Leuten, die nie widersprechen konnten, weil sie vor der Umlizenzierung aufgehört haben? Von einer stillschweigenden Zustimmung kann man ja nur bei Leuten ausgehen, die das mitbekommen haben und nichts dagegen unternehmen. --Ralf Roletschek 19:29, 30 May 2020 (UTC)
Hi Ralf, bei dem Vorschlag hier geht es um Dateien, die vor der Umlizenzierung in ein anderes Wikipedia Projekt hochgeladen wurden, aber erst jetzt nach Commons übertragen wurden. Insofern ist dies quasi nur eine Nachholung der großen Migration. Dein Einwand ist natürlich gleichermaßen berechtigt. Traf allerdings auch bei der vorherigen großen Migration zu und wurde auch damals als Risiko akzeptiert. --Schlurcher (talk) 08:10, 31 May 2020 (UTC)
"Als Risiko akzeptiert" - nur nicht von den Betroffenen. Man darf doch keine Lizenz ändern, wenn der Urheber dem nicht zustimmt. Und es gibt keine Notwendigkeit. --Ralf Roletschek 08:43, 31 May 2020 (UTC)

I think the aspect whether this shall or shall not be done at all should be discussed at the Village pump or a similar venue with larger community feedback. The bot job itself appears as nobrainer to me, and can be approved if there is community support. Different opinions welcome. --Krd 06:55, 7 June 2020 (UTC)

@Krd: OK, thanks. Is there anything in particular you think should be discussed? (e.g. whether to clear the migration backlog at all, opt-outs in general, the bot's particular method of determining opt-outs, etc.) Best, --Mdaniels5757 (talk) 19:59, 9 June 2020 (UTC)
  • Pictogram voting comment.svg Comment I'm one of the users that have been working a lot with license migration. I fixed hundreds of thousands of files on Commons, and other wikis.
It is impossible to have a bot fix everything because someone will make crappy moves from to Commons and someone will edit files on Commons and ruin the license or file history.
For example A upload a photo on in 2008 and license it GFDL. My bot fixed the license migration on In 2017 B downloaded the photo and upload it manually on Commons and added GFDL but did not add an original upload log. Another example A uploaded the photo on as PD-self. B then moved the file to Commons and added GFDL. In both cases the bot can't make the right choise.
I think that what is suggest above is a good solution. The bot will only fix the files if there are very good indicators of what the correct answer is.
I Symbol support vote.svg Support the approval of the bot or at least that there is a test run. --MGA73 (talk) 18:19, 12 June 2020 (UTC)
@Mdaniels5757: I think is should be discussed if the intended job shall be generally done, i.e. changing file license information. --Krd 10:23, 14 June 2020 (UTC)
@Krd: I do not understand what needs to be discussed? Per m:Licensing_update it was decided to do the license migration. The only reasons it is not done yet is 1) because the files were spread out over more than hundred wikis and not all wikis have finished the project 2) because transfers to Commons are not always done as good as they should and 3) because it is still possible to upload files that include a GFDL. I almost finished the proces on Commons 10 years ago and when I returned after a break there were again thousands of files to fix.
The only way to end the project is to stop uploading files to wikis that include a GFDL and move all files to Commons. The bot is meant to make our lives easier. --MGA73 (talk) 14:07, 14 June 2020 (UTC)
Adding on that bots have been approved to change licensing information for the migration in the past: Commons:Bots/Requests/AbiBot and Commons:Bots/Requests/DrilBot. --Mdaniels5757 (talk) 18:05, 14 June 2020 (UTC)
@Krd, Mdaniels5757: Can we get a test run so we can see how the bot works? Atm. the process is manual and the script I used earlier do not work (see Commons_talk:License_Migration_Task_Force#Restart_2020). --MGA73 (talk) 20:51, 20 June 2020 (UTC)
@MGA73: The test run was here. --Mdaniels5757 (talk) 21:41, 20 June 2020 (UTC)
  • @Mdaniels5757: Thank you! I checked all the edits and they are correct. Some of the file pages are messy but we can't blame that on the bot. I think bot is ready to be approved. --MGA73 (talk) 22:00, 20 June 2020 (UTC)
  • @Mdaniels5757, Krd: What is missing before the bot can be approved? --MGA73 (talk) 19:11, 30 June 2020 (UTC)
    • @MGA73: I'm not quite sure. User:Krd wanted some more discussion on whether the migration should happen at all and/or whether a bot should help (not quite sure of the scope), but hasn't yet responded to my mention of previous approvals for similar tasks or your request for clarification. From a technical standpoint, the bot is ready (with some minor improvements mentioned above that I may add in the future). Best, --Mdaniels5757 (talk) 18:43, 1 July 2020 (UTC)

Deletion Notification Bot (talk · contribs)[edit]

Operator: Eatcha (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought:

  1. Notify users if their files are marked for deletion (nominator didn't notified). All types of deletion request will be supported.
  2. If a file is deleted and no DR notice on Talk-Page., and the User is not an admin.

Automatic or manually assisted: Automatic

Edit type (e.g. Continuous, daily, one time run): 24*7

Maximum edit rate (e.g. edits per minute):10 (± 5) per minutes

Bot flag requested: (Y/N): Y

Programming language(s): Python

Source code: GitHub

Eatcha (talk) 18:04, 24 March 2020 (UTC)


Original proposed at Commons:Bots/Work_requests/Archive_15#Notification_of_deletion_tags_for_the_uploader_when_the_tagger_didn't_notify // Eatcha (talk) 18:11, 24 March 2020 (UTC)
Ping users,User:Alexis JazzUser:Masumrezarock100User:MajoraUser:~riley , am I supposed to use traditional red templates or custom text ? // Eatcha (talk) 18:21, 24 March 2020 (UTC)
Traditional templates preferred in my opinion. ~riley (talk) 03:12, 25 March 2020 (UTC)
  • What do you mean by "Can't tell" for maximum edit rate? ~riley (talk) 03:12, 25 March 2020 (UTC)
~riley I don't have any data to guess the rate, "can't tell" will be replaced by some integer before this request gets accepted. Eatcha (talk) 14:46, 25 March 2020 (UTC)
The general expectation is that you list the throttle you have put in place to ensure maxlag or a reasonable rate is not exceeded - you don't have to wait for it to edit to guess or average the rate. ~riley (talk) 16:43, 25 March 2020 (UTC)
  • ✓ Done -- Eatcha (talk) 02:33, 26 March 2020 (UTC)
This has been one of top 10 5 on my wishlist for some time now, thanks. Can the bot also notify users of deletion, if they haven't been notified? Ahmadtalk 00:06, 26 March 2020 (UTC)
Ahmad Can you please clarify "Can the bot also notify users of deletion, if they haven't been notified?" ? Notify after the file has been hidden for non-admin/OS users? This will require admin rights or creation of a database for all files in deletion requests, with Uploader username this won't work if an admin deletes any files themselves without a DR/SD template. -- Eatcha (talk) 02:33, 26 March 2020 (UTC)
Yes, like when an administrator deletes a file that hasn't been tagged, but doesn't notify the uploader of deletion. Isn't it possible to get the uploader's username from the upload log? Ahmadtalk 12:55, 26 March 2020 (UTC)
Ahmad I uploaded a test file File:List of names in a spreadsheet.jpg, can you show me where is the upload log? I don't know if there's a thing called upload log, I am new to MediaWiki. I googled "upload log MediaWiki api" but found nothing relevant. Pywikibot docs returned nothing for upload log. Afaik there's a mediwiki api to get version history of a page, the oldest editor is the uploader. // Eatcha (talk) 13:24, 26 March 2020 (UTC)
Sure. It's here. I'm not sure, but you may find mw:API:Logevents useful. Ahmadtalk 22:24, 26 March 2020 (UTC)
Ahmad Thanks, it's very useful. -- Eatcha (talk) 08:21, 27 March 2020 (UTC)
  • I couldn't complete the following dictionary, does anyone have any Idea if there's any default template for Advertisements for speedy deletion, Other speedy deletions and Personal files for speedy deletion
            dict = {
                "Advertisements for speedy deletion": "{{subst:User:Deletion Notification Bot/NOADS|1=%s}}" % file_name,
                "Copyright violations": "{{subst:User:Deletion Notification Bot/COPYVIO|1=%s}}" % file_name,
                "Other speedy deletions": "{{subst:User:Deletion Notification Bot/SDEL|1=%s}}" % file_name,
                "Personal files for speedy deletion": "{{subst:User:Deletion Notification Bot/personalNO|1=%s}}" % file_name,
                "Deletion requests %s" % today.strftime("%B %Y") : "{{subst:idw|1=%s}}" % file_name,
                "Media without a license as of %s" % today.strftime("%-d %B %Y") : "{{subst:image license|1=%s}}" % file_name,
                "Media missing permission as of %s" % today.strftime("%-d %B %Y") : "{{subst:image permission|1=%s}}" % file_name,
                "Media without a source as of %s" % today.strftime("%-d %B %Y") : "{{subst:Image source |1=%s}}" % file_name,

Eatcha (talk) 15:02, 26 March 2020 (UTC)

  • Is there any problem if I make 30 test edits(15 deleted notification and 15 DR/SD notifications) ? This involves notifying users , I do not want to repeat my mistakes at the other BRFA over here and get this bot blocked, but a test is required IMO. // Eatcha (talk) 08:28, 27 March 2020 (UTC)
  • Example notification : here. The bot will check if a DR notice is available on the page, if DR notice is available will not add deleted notice. -- Eatcha (talk) 10:40, 27 March 2020 (UTC)
  • I'd strongly suggest to start this slowly over a long period, in order not to flood undel requests with nonsense objections and tune the notification text based on the appearing results. --Krd 17:48, 3 April 2020 (UTC)
  • Made 15 edits (post deletion), are there any suggestions ? I didn't found any template for Advertisements for speedy deletion, Other speedy deletions and Personal files for speedy deletion, will notify (pre deletion) in English for these 3 cases. -- Eatcha (talk) 10:31, 4 April 2020 (UTC)
  • Krd Test run complete, I can make the bot not add the link to Commons:Undeletion requests/Current requests if user has more than x templates or if he/she/they has edited Commons:Undeletion requests/Current requests recently. Add a small text " making too many non sense deletion requests can lead to you getting blocked from editing commons. " //Eatcha (talk) 09:28, 5 April 2020 (UTC)
    Add what where? We should not accuse or block threat any user by a bot message please! --Krd 10:16, 5 April 2020 (UTC)
    Add "Please do not make too many problematic un-deletion requests as this can lead to administrative actions. " at the end of these post deletion message. example edit
    Custom templates no longer use the word "block". User:Deletion Notification Bot/NOADS, User:Deletion Notification Bot/SDEL, User:Deletion Notification Bot/NOADS and User:Deletion Notification Bot/COPYVIO.
    Eatcha (talk) 10:51, 5 April 2020 (UTC)
  • I suggest to remove the "PS:" from the notification. It is bad style as it actually isn't "post scriptum". Please make a few more test edits. --Krd 07:59, 10 April 2020 (UTC)
  • ✓ Done 26 edits made (pre+post deletion notification included). Removed "PS:" from pre deletion message. -- Eatcha (talk) 10:15, 10 April 2020 (UTC)
    Please check the message formatting. E.g. in Special:Diff/410261767 there is too much vertical whitespace but missing space between colon and deletion reason.
    I also suggest to put a warning on the bot's talk page that questions regarding deletions will not be answered there (unless anybody does watch the page). --Krd 11:03, 10 April 2020 (UTC)
    ✓ Done Made 3 edits (1, 2 and 3). Updated talk page User talk:Deletion Notification Bot // Eatcha (talk) 14:34, 11 April 2020 (UTC)
    Per no. two out of these three, can you please disable notifications if the uploader was a bot? --Krd 09:35, 18 April 2020 (UTC)
    Okay, will not add template if user has 'bot' flag or username ends with '[Bb]ot' // Eatcha (talk) 15:39, 18 April 2020 (UTC)
    Please make a bigger test run, perhaps around 50 edits of different kinds. Thank you. --Krd 04:41, 22 April 2020 (UTC)
    ✓ Done 56 edits. //Eatcha (talk) 05:15, 23 April 2020 (UTC)

Possible problem with the bot?

Hello! Hope you are well. I stop by here for a particular issue about your bot Deletion Notification Bot. After reviewing his contributions, I see that he sends messages that "were not delivered" to other users (Notices from: DW, SD, Not licensing, among others). However, I comment on this inconvenience Special:Diff/414178510 and Special:Diff/414178540 both pages that the bot has notified me, is the effect of an image transfer, therefore since redirection is unnecessary, I have marked it for Speedy delete. That particular action may erroneously notify a user (Filemover or another user who has marked the deletion) which mark as SD to unnecessary redirect pages. Do you think you can avoid these kinds of problems?. Regarding the notice that is on my talk page, you can undo or hide it please. Kind regards Mazbel – 08:28, 23 April 2020 (UTC)

Mazbel I can iterate over all the edit objects to check if the uploader is the sole contributor of a particular page, if condition is True then will not notify the uploader. And please use this page for disccusion about this bot, currently in trial phase, best if all issues are discussed here. What's your opinion @ Krd ? //Eatcha (talk) 08:41, 23 April 2020 (UTC)
Myabe just check the extreme contributors if same then will not notify, it's more scalable than iteration over all edits. -- Eatcha (talk) 08:47, 23 April 2020 (UTC)
I don't understand the last statement, please say again. --Krd 07:21, 26 April 2020 (UTC)
Checking all edits searching for who added the deletion template should have a limit, let say lastest 5 edits. If I try to check all edits and compare the editor with the uploader this would take too long to complete checking a single file. I should also check editors for Commons:Deletion requests/File:Filename.extension for a given file, but with a restriction. The nominator and last 3 editors. If any of them is uploader, will not notify. Similar for deletion, if the admin who deleted a file was the uploader. // Eatcha (talk) 06:09, 27 April 2020 (UTC)
You can stop as soon as you have found the right versions, starting from the most recent one. This will match at the first try, i.e. the most recent edit, in 98% of all cases. For the rest I think it's worth to spend the additional queries and computing time, as the job doesn't have to be strictly realtime anyway. --Krd 05:54, 5 May 2020 (UTC)
I'll accomplish that. // Eatcha (talk) 17:06, 5 May 2020 (UTC)

@Eatcha: Please advise how we proceed with this. Are all issues resolved, can the request be approved? --Krd 03:53, 10 May 2020 (UTC)

Are all issues resolved : Yes. But I can't predict what issues will arise during the full scale run.
How we proceed with this : I will monitor this task (full scale) for a week and stop the bot whenever any user complains. And address the issues. And restart the bot.
Can the request be approved : Yes, but this task may have issues when running on full scale. I don't have enough idea about deletions.
\\Eatcha (talk) 04:16, 10 May 2020 (UTC)
Sounds good, bot flag set for continuous trial. --Krd 14:08, 12 May 2020 (UTC)

In case of mass deletion requests, this bot creates a flood of individual messages, all broken like this one which do not link correctly to the DR. --AFBorchert (talk) 08:25, 13 May 2020 (UTC)

✓  Fixed And rate limited to max 3 notifications. example edit // Eatcha (talk) 10:14, 13 May 2020 (UTC)
Thank you for this and, of course, thank you also for developing this bot. I find it very valuable to have a bot that makes sure that notifications will be delivered even if they were accidently not posted. But allow me to return to this point: How hard is it to generate just one post for one DR? --AFBorchert (talk) 11:05, 13 May 2020 (UTC)
✓  Onwards one dr page will result in one notification ONLY. And rate limit increased to 7 per hour per user // Eatcha (talk) 14:56, 13 May 2020 (UTC)

I have requested the bot be forcably shut off at [3]. There is no good reason to generically point users to the help desk rather than stating who is the DR nominator. Avoiding this just confuses users and fails to make the bureaucracy accountable. -- (talk) 10:12, 13 May 2020 (UTC)

Add who is the DR nominator :  Doing… Will add the name of nominator but will still point them to help desk. I don't see any problem in pointing users to the help desk. // Eatcha (talk) 10:21, 13 May 2020 (UTC)
The harm is wasting everyone's time on the help desk. The nominator is the one who should be leaving uploader notifications and in the first instance, uploaders should be able to ask questions about the nominations of the nominator on the uploader's own talk page where the notice is. This avoids misunderstandings and may help accidental nominations being found early. -- (talk) 10:30, 13 May 2020 (UTC)
1) The nominator is the one who should be leaving uploader notifications and in the first instance : Many nominators don't notify. Primary reason for operating this bot. Read Commons:Bots/Work_requests/Archive_15#Notification_of_deletion_tags_for_the_uploader_when_the_tagger_didn't_notify
2) uploaders should be able to ask questions about the nominations of the nominator on the uploader's own talk page where the notice is : If there's no notification on the talk page, how will the uploader know about the deletion ? The speedy deletions can take less than an hour.
Eatcha (talk) 10:42, 13 May 2020 (UTC)
This is poor framing. If the intention of the bot is to 'repair' missing notifications, the bot is acting on behalf of the DR nominator, not the help desk, nor the bot operator. -- (talk) 11:32, 13 May 2020 (UTC)
  • Q to Fæ : You said "it is relatively trivial for an automated process to work out who raised the deletion request" ? How would you detect who nominated a file for deletion ? Iterate over recent x edits ? Or something else. BTW: It's should be less expensive/easy for regular DRs. // Eatcha (talk) 10:56, 13 May 2020 (UTC)
Hm... isn't it possible to see who created the DR? --AFBorchert (talk) 11:05, 13 May 2020 (UTC)
There are no DR page for any deletion nomination other that Standard DRs. Speedy deletion, Media without a license and Media missing permission etc. don't involves creation of a discussion page. No new pages = need to iterate over older edits to find the nominator, in the worst case you spend time directly proportional to the number of edits and find nothing. // Eatcha (talk) 14:39, 13 May 2020 (UTC)
I'm not going to review your code for you, but recent image page version history however you call it up it, should be short and efficiently easy to filter based on edit comment or content. -- (talk) 11:30, 13 May 2020 (UTC)
Okay, will do this. But will only check the recent 5 edits and if nominator not found will not specify the nominators name. This should be fine (at least, IMO) for most of the cases, and will prevent any expensive iteration. // Eatcha (talk) 14:39, 13 May 2020 (UTC)
✓ Done // Eatcha (talk) 05:24, 14 May 2020 (UTC)
I'm iterating over all edits (reverse order) and checking who added the template. // Eatcha (talk) 06:10, 15 May 2020 (UTC)

I was notified about this file I didn't upload but I moved it last year and it turned to a redirect. It was tagged by the uploader. Any chance that doesn't happen again? Thanks. 1989 (talk) 04:28, 15 May 2020 (UTC)

I don't have the rights to check that file, but my guess is the first edit summary will always contain the sub-string "moved page" in it's edit summary/comment. ✓ Done If I am correct. // Eatcha (talk) 05:55, 15 May 2020 (UTC)
  • User talk:Monicasanchezgonzalez

You are operator of Deletion operator bot. Please look the user talkpage. The user got multiple notices, that her files got deleted due to their own request. In my opinion this makes no sense. I understand, that it's difficult to sort out files deleted due to uploader's request, but anyway, it makes no sense. In addition, I got some twenty notices, that I deleted some files speedily. Do you think about administrators? It's really annoying to get hundred such notices each day. Maybe {{Noping}} is worth trying. And if multiple files of same uploader are nominated for deletion, then only one template is written on the user talkpage and below is list of affected files. Would be better, when Monica got only one message with list of affected files. Taivo (talk) 15:35, 18 May 2020 (UTC)

I stopped the post deletion notice part of the bot. I was not aware that a bot can ping an user ( includes admins ). I will fix this issue in the next run. These are not pre/normal deletion request notices but post deletion notice to detect deletions when the uploader was never notified. These post dr notices are kinda hard to handle because the files are hidden from non admin users, only clue is the dr reason mentioned by the admins which are inconsistent(not machine readable). // Eatcha (talk) 16:54, 18 May 2020 (UTC)
✓ Done, nominators and admins will not get unwanted pings anymore. And the issue with self requested deletions can be avoid by checking for multiple keywords in the deletion reason, post deletion notification will remain disabled until I solve the issue. // Eatcha (talk) 05:04, 19 May 2020 (UTC)
  • From bot's talk page

For the first time ever, I just received four notifications from this bot for files that I had correctly deleted on sight. If Admins get notifications for every {{Speedy}} they make they may as well stop making them. .     Jim . . . (Jameslwoodward) (talk to me) 16:57, 18 May 2020 (UTC)

Jameslwoodward Oops, I wasn't aware of the pings. I was informed by User:Taivo here. The issue is now fixed (commits : 1 and 2). If there is no problem, you should unblock the bot. It's under one week flagged trial period and these issues were not identified in the small test runs.
And I will need to move your message on this page to Commons:Bots/Requests/Deletion Notification Bot, this should ensure that all issues are kept in one centralized discussion page. -- Eatcha (talk) 04:57, 19 May 2020 (UTC)

Unblock ✓ Done by 1989. Thanks, .     Jim . . . (Jameslwoodward) (talk to me) 10:45, 19 May 2020 (UTC)

  • Please do to inform users the are indefinitely blocked or globally locked. We don't feed abusers. --Krd 06:22, 20 May 2020 (UTC)
I assume it's a typo and you meant "don't inform users who are indefinitely blocked or globally locked" ✓ Done -- Eatcha (talk) 14:49, 20 May 2020 (UTC)
  • Please test slower or use dry runs. It seems there appear issues with every recent test, so this bot causes disruption currently. --Krd 06:22, 20 May 2020 (UTC)
✓ Done Will run the bot when I'm actively monitoring for issues. // Eatcha (talk) 14:49, 20 May 2020 (UTC)
No more bugs found, should be approved IMO. // Eatcha (talk) 15:03, 26 May 2020 (UTC)
And now running without supervision. Of course throttled to minimise damage if any at all. // Eatcha (talk) 18:49, 26 May 2020 (UTC)
  • This line from the source code: new_text = ( old_text + "\n{{subst:User:Deletion Notification Bot/deleted notice|1=%s}}Deleted by [ User:%s]. Reason for deletion : %s . \n~~~~" % (self.file_name, admin.replace(" ", "_"), admin, reason))
Consider moving the "Deleted by ..." text to the User:Deletion Notification Bot/deleted notice template. That way, it can more easily be translated. The owner of the talk page does not necessarily speak English.
[ User:%s] is bad syntax. The user might be using instead of Consider using {{noping|%s}} instead.
Let's say that I tag a file with {{subst:nsd}} after 23:50:00 but no later than 23:59:59 and don't notify the uploader. Will the bot notify the uploader? --Stefan2 (talk) 00:59, 2 June 2020 (UTC)
Will get back to this later, stopped the bot until then. Thanks // Eatcha (talk) 04:08, 2 June 2020 (UTC)
✓ Done commits 1 and 2 // Eatcha (talk) 05:22, 2 June 2020 (UTC)
QLet's say that I tag a file with {{subst:nsd}} after 23:50:00 but no later than 23:59:59 and don't notify the uploader. Will the bot notify the uploader?
A Yes, there's now way you create a DR and the file gets deleted without notifying the uploader. There are 2 different scripts that run independently but use the data by other script to check if the uploader was notified or not. If you tag a file at 23:59:59 this would likely be not handled by the pre deletion script but the post deletion scripts will take care of that. SIDENOTE: The bot will not notify for more than 7 DRs and 3 post deleted files per run to prevent spamming the talk-pages in case a vandal nominates all files by uploader for deletion. // Eatcha (talk) 05:35, 2 June 2020 (UTC)
New edits 1 and 2. // Eatcha (talk) 05:36, 2 June 2020 (UTC)
  • Pictogram voting comment.svg Comment and Pictogram-voting-question.svg Question I think it is a nice feature that the bot informs users if one of their files are nominated for deletion and they are not already informed.
    • If I moved a file from to Commons and it is nominated for deletion I think that the original uploader should be informed. Is that possible?
    • If I upload a file and then add a speedy and ask for the file to be deleted will I get a notice?
I think the latest edits look good. Can the bot be approved for a new trail? --MGA73 (talk) 18:45, 12 June 2020 (UTC)
The original uploaders on are receiving the notification on their commons talk page if not blocked on commons nor globally locked/banned. {{Nobots}} is respected, inbuilt feature of the pywikibot.
If you upload a file and tag the file for deletion with the same account (same unique username) you will not receive notification because you're already aware that you want the file deleted and notifying would be classified as spamming.

// Eatcha (talk) 17:11, 13 June 2020 (UTC)

Sounds great! I think it should go online so we can see how it works! --MGA73 (talk) 20:24, 13 June 2020 (UTC)
Do I understand correctly that another test run will be required? If yes, please continue accordingly, otherwise please summarize what will be the next step. --Krd 10:25, 14 June 2020 (UTC)
It's working as expected and is ready to be approved. Thanks // Eatcha (talk) 10:35, 14 June 2020 (UTC)

For the record: Commons:Administrators' noticeboard/User problems#Notification by bot problems --Krd 16:17, 15 June 2020 (UTC)

I made this recommendation at ANUP as well, but I'll make it here too. I'd suggest that the bot attempt to delay notifications by about 30 minutes to prevent cases like User_talk:Iñaki_LL#Copyright_status:_File:Ataungo_ikuspegiak_1.jpg. AntiCompositeBot, as part of its approved bot task, may delay notifications by up to 10 minutes (in the current configuration). This introduces a race condition with this bot, where both bots will notify the same user for the same edit. In the case of User talk:Fæ, an edit conflict from Deletion Notification Bot caused AntiCompositeBot to fail to leave it's own notification. I've improved the edit conflict handling for ACB, but I would suggest that Deletion Notification Bot delay notification for at least 30 minutes to give bots and human editors a chance to notify other editors properly. While manual DR nominations are uncommon on Commons, I have personally seen human editors take more than 5 minutes to finish nominating a page for deletion and notify the page creator. --AntiCompositeNumber (talk) 16:55, 15 June 2020 (UTC)
I think that a delay is the best solution. Consider a similar situation where a normal user manually creates a deletion request. You'd create the deletion discussion subpage, tag all files with {{Delete}} and notify the uploaders. If there are lots of files and lots of uploaders, the notifications might be posted several minutes after {{Delete}} was added. It's silly if the bot notifies the uploader about the deletion request if the nominator is going to notify the uploader one minute later. --Stefan2 (talk) 17:14, 15 June 2020 (UTC)
The bot doesn't anymore notifies for any kind of DR created by ACBot, I'm not sure if 30 minutes is a good Idea there are copyright violations and speedy deletions processes where files are often deleted under 30 minutes. How about 15 minutes? And don't notify for DRs(any type) created by bots. // Eatcha (talk) 18:58, 15 June 2020 (UTC)
@Eatcha: I think 15 minutes are fine. But why exclude all bots? Do we have any other bots nominating files for deletion? If a bot nominate a file for deletion I doubt there will be many cases where it takes more than 15 minutes to notify uploader. If it has not notified uploader after 15 minutes I'm sure it will never do that. Should it happen just ping me and I will be happy to clean up the users talk page and write a personal I'm-sorry letter :-) --MGA73 (talk) 20:46, 20 June 2020 (UTC)
I didn't excluded all bots. There is atleast one bot that nominates file for deletion other than AntiCompsiteNumberBot. I will probably list those here after looking for them in the logs. // Eatcha (talk) 06:56, 22 June 2020 (UTC)

The bot added a duplicate notification at User talk:GeethaGovind. Also, its explanation is not grammatically correct; it should start something like "I am a piece of software; please do not ask me questions but ask the user who nominated your file for deletion ..." Maybe "computer program" would be better than "piece of software". Graham87 (talk) 03:53, 22 June 2020 (UTC)

Reason for dupe , case sensitive issue with the "File:" namespace. The bot now does not looks for file name with the the namespace. And fixed the incorrect explanation. // Eatcha (talk) 07:00, 22 June 2020 (UTC)


The bot made the same four notifications three times on my discussion. Thank ou, but I noticed it the first time and reacted on them. I do need further notifications for the same files. [4] --JPF (talk) 17:55, 25 June 2020 (UTC)

J Patrick Fischer Sorry, the bot uses database that's stored on wmf servers to prevent duplicate messages. It's possible that I was checking something locally on my computer and I don't have the older data on my machine. And when the database is not available it just checks the live wiki pages for detecting past messages. I cheked the program logs on server and test the program for your files on server and it appears fine to me. My apologies for the inconvenience. // Eatcha (talk) 04:29, 26 June 2020 (UTC)
tools.eatchabot at tools-sgebastion-07 in ~/Deletion-Notification-Bot on master [?]
$ grep -n "Liga Futebol Amadora" dump.txt 
363: File:Liga Futebol Amadora.jpg , Uploaded by User:J. Patrick Fischer and nominated by User:Glorious 93 
364:File:Liga Futebol Amadora.jpg was processed once. ***

tools.eatchabot at tools-sgebastion-07 in ~/Deletion-Notification-Bot on master [?]
$ grep -n "Kablaki FC" dump.txt 
359: File:Kablaki FC.jpg , Uploaded by User:J. Patrick Fischer and nominated by User:Glorious 93 
360:File:Kablaki FC.jpg was processed once. ***

tools.eatchabot at tools-sgebastion-07 in ~/Deletion-Notification-Bot on master [?]

If you don't mind can I move this section to Commons:Bots/Requests/Deletion Notification Bot. // Eatcha (talk) 04:29, 26 June 2020 (UTC)

Of course. Thank you! --JPF (talk) 04:32, 26 June 2020 (UTC)
  • Help:VisualFileChange.js is able to bundle multiple notifications to the same uploader. Can't the bot do this? The user who complained above was notified about four different files in four separate sections. --Stefan2 (talk) 10:38, 27 June 2020 (UTC)
THese are copyright violations not standard DRs, can you show me an example where copyvio templates were bundled by Help:VisualFileChange.js. If there's a template already being used I have no problem in implmenting bundled copyright violation notices. // Eatcha (talk) 15:16, 28 June 2020 (UTC)
See Special:Diff/429520052. I wasn't sure where to look, so I started searching for copyvios until I found a user who had multiple copyvios. --Stefan2 (talk) 19:41, 28 June 2020 (UTC)
Stefan, how should the bot handle if files have different reason for deletion? The files nominated manually can have different reasons for deletion. Maybe reason for each file next to it in the list? // Eatcha (talk) 14:33, 29 June 2020 (UTC)
If the file has been nominated for deletion, you're not quoting the deletion rationale or specifying who the nominator is, right? If there are two {{Copyvio}} and three {{Delete}}, you could bundle the copyvios under one single {{subst:copyvionote}} and the deletion requests under one single {{subst:idw}}, reducing the number of talk page sections from five to two. --Stefan2 (talk) 17:55, 30 June 2020 (UTC)
If the file has been nominated for deletion, you're not quoting the deletion rationale or specifying who the nominator is, right? No, I'm scraping the rationale and trying to specify who nomiated the file for deletion. It's not possible in every case to identify the nomaintor beacuse we have way too many templates that can be used to nominte a file for deletion, but accounding to logs more than more than 95 % files' nominator was succefully idnetified. // Eatcha (talk) 10:51, 1 July 2020 (UTC)
@Stefan2: If files should be bundled is it a good idea to bundle different types? If a user upload 1 copyvio and 50 files with no license and the bot bundle 51 files under "copyvio" then the next admin will think "Wow! Lets us block that user!". Anyway I think it is a good idea with this bot and think it should be approved. As with everything else it can be improved along the way :-) So I will just make my Symbol support vote.svg Support and not make any further comments. Good work @Eatcha: and thank you for making the request. --MGA73 (talk) 18:47, 30 June 2020 (UTC)
If files should be bundled is it a good idea to bundle different types? No. That's why I proposed bundling only if the notification template is the same for both of them. --Stefan2 (talk) 22:09, 30 June 2020 (UTC)
Just to make it clear, I'll bundle if the notification template is the same for both of them as per todays design of the bot(e.g. all copyvio in one sextion, all person photos in another and so on.). And add the nominator along with the reson if identified and scraped. This should require some serious re-designing and re-factoring, will try to ship by tomorrow night. // Eatcha (talk) 11:00, 1 July 2020 (UTC)
✓ Done Now bundling files. // Eatcha (talk) 05:16, 2 July 2020 (UTC)

Robocito (talk · contribs)[edit]

Operator: Wilfredor (talk · contributions · Number of edits · recent activity · block log · User rights log · uploads · Global account information)

Bot's tasks for which permission is being sought:

  • Add geographic information in the metadata of the images, based on geolocation in the description of the images or...
  • ...add geolocation template in the image description, based on the pre-existing information in the metadata

Automatic or manually assisted: Manually using Category name or image name to check

Edit type (e.g. Continuous, daily, one time run): Continuous

Maximum edit rate (e.g. edits per minute): 12

Bot flag requested: (Y/N): Y

Programming language(s): Python


Are there any sanity checks? For example comparison of image coordinates with object coordinates? --EugeneZelenko (talk) 14:16, 16 March 2020 (UTC)

EugeneZelenko Thanks for your question, there are different types of location, in this case it is the camera location, which is the information that is saved in the image metadata --Wilfredor (talk) 14:40, 16 March 2020 (UTC)
My point was to check that camera location is not too far from object location. --EugeneZelenko (talk) 14:43, 16 March 2020 (UTC)
EugeneZelenko At the moment there is no way to know which object or objects are in an image, much less know its location unless the user writes it in the description. There are objects that are many kilometers away from the camera, for example, pictures of wild animals usually use 400mm telescopic lenses, for example, assuming a 22.5mm wide sensor, 400mm lens and 50 ft (15.24 km) subject distance, you will capture a subject and of course this changes in cut sensors that could calculate greater distances. With large bird you can shoot at 100 feet an get something decent, with small tiny birds you will need to be at about 20 to 25 feet. --Wilfredor (talk) 15:04, 16 March 2020 (UTC)
EugeneZelenko Additionally, when a camera takes a photo and has a built-in GPS, there is no way it is false information unless it has been manually edited by the user. It is not impossible but unlikely that the information in the image metadata is false --Wilfredor (talk) 23:19, 16 March 2020 (UTC)
Categories' Wikidata item or prominent depicts Structured Data statements are helpful for determine object location at least for architecture photos. --EugeneZelenko (talk) 14:27, 17 March 2020 (UTC)
EugeneZelenko Yes, I understand, that could be additional functionality, for the moment the scope is add only the camera location. The object location requires several verifications and resolve other problem, for example, in an image there can be several object categories for each object in the image and each category can have a different location in wikidata, so which location would be added? --Wilfredor (talk) 21:28, 17 March 2020 (UTC)
EugeneZelenko Yes, this information is being used to obtain the location information as well as the one placed directly in the image description. --Wilfredor (talk) 15:47, 17 March 2020 (UTC)
  • From my bot's cleanup task to remove implausible coordinates, I do know that users often add 0, 180 or 90 in location parameters when they do not know them. This is often when they use the upload wizard and they seem to feel forced to add anything. These do then translate to north or south pole and basically never make sense. Please exclude them as part of the sanity checks. Please see my unit test on examples [5] -- Schlurcher (talk) 09:50, 20 March 2020 (UTC)
Schlurcher Thanks for the test cases, I'm going to add them, please let me know if you know of others. --Wilfredor (talk) 14:22, 20 March 2020 (UTC)

Can you add new locations to SDC and than just add empty {{Location}} to the image to notify it to display it? See File:Seneca Rocks climbing - 13.jpg for example. Adding coordinates in wikitext and SDC is also OK. --Jarekt (talk) 19:23, 1 April 2020 (UTC)

Thanks for your idea, I had been thinking about it, however, at the moment the bot will not have that functionality because a human confirmation is necessary. Additionally, the location of the image metadata is more exact for this specific image and not for all those found in this category and respective information in SDC. I will add this to the list of future features, thank you very much --Wilfredor (talk) 12:37, 2 April 2020 (UTC)
  • Have all suggestions made above been implemented? Is this ready do be approved? --Krd 07:49, 10 April 2020 (UTC)
Thanks for asking, it's not ready yet, I need to think about how to implement the suggestions. Some I do not know how to implement without human interaction. --Wilfredor (talk) 13:58, 10 April 2020 (UTC)
If you need assistance, please let me know. --Krd 14:36, 10 April 2020 (UTC)
I am trying to do this on my own, if I feel that I am blocked I will ask you for help. Thanks you so much --Wilfredor (talk) 16:25, 10 April 2020 (UTC)
  • Great work on this so far. Can you please introduce a throttle for edit speed? 1 edit per second/60 edits per minute is highly excessive for a non-priority task. Can you please reduce to 1 edit every 5 secods or 15 epm? ~riley (talk) 18:36, 10 April 2020 (UTC)
~riley done, thanks for your sugestion. --Wilfredor (talk) 18:41, 10 April 2020 (UTC)
@Wilfredor: Thank you for being receptive and prompt to make the change. Can you please update the edit rate above to reflect the change? ~riley (talk) 06:48, 18 April 2020 (UTC)
✓ Done sorry I did it in the code only Wilfredor (talk) 13:47, 18 April 2020 (UTC)

@Wilfredor: Please report status of your coding. Ready for test edits? --Krd 03:52, 10 May 2020 (UTC)

Yes sir, it's ready for test edits :) Wilfredor (talk) 19:10, 10 May 2020 (UTC)
Great, please do some test edits. --Krd 14:07, 12 May 2020 (UTC)
it was a test --Wilfredor (talk) 14:17, 12 May 2020 (UTC)
Please perform ~20 edits with the bot account. Thanks --Schlurcher (talk) 16:54, 12 May 2020 (UTC)
I have had some problems with images that exceed 50 MB with a library I was using called GPSPhoto, due to this I have been forced to use other lower level libraries but with more community support, however, it require additional work. I have also had problems with dependencies that are not available for windows, so I have been installing the latest stable version of ubuntu to have a simpler working environment. I only work on weekends so it takes so long and I apologize for the delay but I will tell you when the implementation is ready. --Wilfredor (talk) 13:34, 18 May 2020 (UTC)
No worries. Just report back once you are ready. Take your time. --Schlurcher (talk) 11:28, 19 May 2020 (UTC)