Huma
Appearance
Huma[1] (https://huma.wmcloud.org) is a tool to give more visibility and structured insight into MediaWiki and its components.
It's mainly a PostgreSQL database which you can query directly via https://huma.wmcloud.org/sql.
Database schema
[edit]It has two tables:
methods
[edit]This table is a registry of methods in MediaWiki. It has three fields:
class_name
: Name of the class including namespace.method_name
: Name of the method/attribute/constant.info
: json object containing information about the method. Here is an example:
{
"visibility": "public",
"name": "select",
"parameters": [
{
"hard_type_hint": "array",
"name": "$connections",
"soft_type_hint": "ConnectionInterface[]"
}
],
"hard_return_type_hint": "Elasticsearch\\Connections\\ConnectionInterface",
"body_size": 47,
"class_info": {
"implements": [
"Elasticsearch\\ConnectionPool\\Selectors\\SelectorInterface"
]
},
"method": true
}
calls
[edit]This table is registry of function calls and dependencies between classes. It has four columns:
caller_class_name
: Class name of the code that is calling. Including namespaces.caller_method_name
: Method name of the caller.called_class_name
: Class that is being called.called_method_name
: The name of the method that is being called.
Admin
[edit]Source code
[edit]Further reading
[edit]- File:Huma bird eye view of mediawiki.pdf: Showcase slide of huma in Wikimedia Hackathon 2024