Grants:Project/Jayprakash12345/Improve documentation of MediaWiki maintenance scripts/Midpoint


Report accepted
This midpoint report for a Project Grant approved in FY 2020-21 has been reviewed and accepted by the Wikimedia Foundation.



Welcome to this project's midpoint report! This report shares progress and learning from the first half of the grant period.

Summary edit

In a few short sentences or bullet points, give the main highlights of what happened with your project so far.


  • Project page mw:Project Pralekhan has setup to track the progress of every script.
  • Ran a Unconference session and collected feedback from the community in Wikimania 2021.
  • Created mw:Manual:Maintenance scripts/Sidebar for smooth navigation to various maintenance script's root pages.
  • Created 8 categories maintenance script.
  • Out of 125, 60 maintenance scripts has been documented.
  • Except two scripts, all 60 maintenance scripts has Details section, Parameter/Options section, Usage section, See also section, and Category.
  • Had three meeting with APaskulin (WMF) for feedbacks.
  • Discussed the ways to get users' feedback and query on qulity

Methods and activities edit

How have you setup your project, and what work has been completed so far?

Describe how you've setup your experiment or pilot, sharing your key focuses so far and including links to any background research or past learning that has guided your decisions. List and describe the activities you've undertaken as part of your project to this point.


With above methods, Technical writer documented 60 maintenance scripts out of 125. See outcomes section below.

Midpoint outcomes edit

What are the results of your project or any experiments you’ve worked on so far?

Please discuss anything you have created or changed (organized, built, grown, etc) as a result of your project to date.

First outcome edit

Out of 125, 60 maintenance scripts has been documented as outcomes which are below with following details.

S. No. Script Details Parameter/Options Usage See also Category
1 generateSchemaSql.php  Y  Y  Y  Y  Y
2 makeTestEdits.php  Y  Y  Y  Y  Y
3 findMissingFiles.php  Y  Y  Y  Y  Y
4 findDeprecated.php  Y  N (n/a)  Y  Y  Y
5 invalidateUserSessions.php  Y  Y  Y  Y  Y
6 jsparse.php  Y  Y  Y  Y  Y
7 validateRegistrationFile.php  Y  Y  Y  Y  Y
8 resetPageRandom.php  Y  Y  Y  Y  Y
9 dumpCategoriesAsRdf.php  Y  Y  Y  Y  Y
10 mysql.php  Y  Y  Y  Y  Y
11 view.php  Y  Y  Y  Y  Y
12 protect.php  Y  Y  Y  Y  Y
13 mctest.php  Y  Y  Y  Y  Y
14 orphans.php  Y  Y  Y  Y  Y
15 populateInterwiki.php  Y  Y  Y  Y  Y
16 purgeModuleDeps.php  Y  Y  Y  Y  Y
17 mcc.php  Y  Y  Y  Y  Y
18 addSite.php  Y  Y  Y  Y  Y
19 categoryChangesAsRdf.php  Y  Y  Y  Y  Y
20 deleteTag.php  Y  Y  Y  Y  Y
21 exportSites.php  Y  Y  Y  Y  Y
22 importSites.php  Y  Y  Y  Y  Y
23 refreshFileHeaders.php  Y  Y  Y  Y  Y
24 renameRestrictions.php  Y  Y  Y  Y  Y
25 initUserPreference.php  Y  Y  Y  Y  Y
26 cleanupRevActorPage.php  Y  Y  Y  Y  Y
27 checkBadRedirects.php  Y  Y  Y  Y  Y
28 findOrphanedFiles.php  Y  Y  Y  Y  Y
29 migrateFileRepoLayout.php  Y  Y  Y  Y  Y
30 copyFileBackend.php  Y  Y  Y  Y  Y
31 updateCredits.php  Y  Y  Y  Y  Y
32 manageForeignResources.php  Y  Y  Y  Y  Y
33 cleanupRemovedModules.php  Y  Y  Y  Y  Y
34 populateBacklinkNamespace.php  Y  Y  Y  Y  Y
35 populateRevisionSha1.php  Y  Y  Y  Y  Y
36 runBatchedQuery.php  Y  Y  N  Y  Y
37 syncFileBackend.php  Y  Y  Y  Y  Y
38 checkImages.php  Y  Y  Y  Y  Y
39 manageJobs.php  Y  Y  Y  Y  Y
40 mergeMessageFileList.php  Y  Y  Y  Y  Y
41 cleanupBlocks.php  Y  Y  Y  Y  Y
42 addRFCandPMIDInterwiki.php  Y  Y  Y  Y  Y
43 checkDependencies.php  Y  Y  Y  Y  Y
44 deduplicateArchiveRevId.php  Y  Y  Y  Y  Y
45 deleteAutoPatrolLogs.php  Y  Y  Y  Y  Y
46 populateIpChanges.php  Y  Y  Y  Y  Y
47 minify.php  Y  Y  Y  Y  Y
48 populatePPSortKey.php  Y  Y  Y  Y  Y
49 refreshExternallinksIndex.php  Y  Y  Y  Y  Y
50 checkLess.php  Y  Y  Y  Y  Y
51 deleteSelfExternals.php  Y  Y  Y  Y  Y
52 populateArchiveRevId.php  Y  Y  Y  Y  Y
53 updateArticleCount.php  Y  Y  Y  Y  Y
54 cleanupWatchlist.php  Y  Y  Y  Y  Y
55 deleteLocalPasswords.php  Y  Y  Y  Y  Y
56 populateParentId.php  Y  Y  Y  Y  Y
57 removeUnusedAccounts.php  Y  Y  Y  Y  Y
58 purgeExpiredWatchlistItems.php  Y  Y  Y  Y  Y
59 purgeExpiredUserrights.php  Y  Y  Y  Y  Y
60 updateExtensionJsonSchema.php  Y  Y  Y  Y  Y


Second outcome edit

Eight new categories are created as outcome which are following.


Finances edit

Please take some time to update the table in your project finances page. Check that you’ve listed all approved and actual expenditures as instructed. If there are differences between the planned and actual use of funds, please use the column provided there to explain them.

Then, answer the following question here: Have you spent your funds according to plan so far? Please briefly describe any major changes to budget or expenditures that you anticipate for the second half of your project.

Expenses
S.No. Item Unit Rate Total (In USD)
1 Technical writer 185 hours $25 $4625
2 JioFiber semi-annual internet recharge Unlimited@500 Mbps plan - $240
3 Bank charges on 1st installment - $11
Grant total $4876


Q1. Have you spent your funds according to plan so far?

Ans. Yes


Q2. Any major changes to budget or expenditures?

Ans. No, there is minor $40 increase in Internet bill as I forget to add tax on $200 internet plan. There is 18% of GST tax per Government of India.


Grantee has already received half of grant amount 339,256 INR (~$4675) as 1st instalment in June 2021.

Learning edit

The best thing about trying something new is that you learn from it. We want to follow in your footsteps and learn along with you, and we want to know that you are taking enough risks to learn something really interesting! Please use the below sections to describe what is working and what you plan to change for the second half of your project.

What are the challenges edit

What challenges or obstacles have you encountered? What will you do differently going forward? Please list these as short bullet points.


  • Every script has its own use so creating the environment for every script is sometimes very stressful. I need to collect and then have to replicate the situation for every script to run in terminal.
  • Some scripts have a bug (Like one I discovered during this project see phab:T291331) that makes documentation a little bit hard.
  • I am facing an issue with collecting feedback from visitors as it has some privacy concern that needs some follow-up with WMF's legal team. It is being discussed with project advisor at phab:T295695.

What is working well edit

What have you found works best so far? To help spread successful strategies so that they can be of use to others in the movement, rather than writing lots of text here, we'd like you to share your finding in the form of a link to a learning pattern.


It is now good to see that so many scripts now have structured documentation. With great help from APaskulin (WMF), I have done 60 maintenance scripts by 10 Nov 2021. Everything going very well except the above challenges.

Next steps and opportunities edit

What are the next steps and opportunities you’ll be focusing on for the second half of your project? Please list these as short bullet points.


In next steps, I will document further 65 scripts in next three months.

Grantee reflection edit

We’d love to hear any thoughts you have on how the experience of being an grantee has been so far. What is one thing that surprised you, or that you particularly enjoyed from the past 3 months?


It is a really very awesome experience for me to work on maintenance scripts. Even, I have been working on MediaWiki since early 2017 but only after working on this project, I came to know many other scripts as well that are very useful. I got Alex as my mentor. I can't express how she is good in nature. A great thank you, Alex.

The project got some delay from my end which I acknowledge. But this is the nature of human work. We can't expect to things go as well as planned. Working and giving shape to this project with help of Alex really made me proud. Thank you again Alex for your support and WMF for funding.