PocketMine-MP before 4.0.3 does not perform case-insensitive matching when removing operator entries from ops.txt. The removeOp function lowercases the supplied name but only removes an exactly matching entry, so an operator name stored with non-lowercase letters cannot be revoked using the deop command, leaving the player as an operator until the entry is removed from ops.txt manually.
{
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "4.0.3"
}
],
"source": "DESCRIPTION"
},
{
"range": [
{
"fixed": "4d37b79ff7f9d9452e988387f97919a9a1c4954e"
}
],
"source": "REFERENCES_COMMIT"
}
]
}