Traditionally, DROP TABLE and TRUNCATE TABLE discarded any locks that may have been held on the table. This feels like an ACID violation. Probably most occurrences of it were prevented by meta-data locks (MDL) which were introduced in MySQL 5.5.
It is cleaner to always protect DDL operations with an exclusive table lock. Other operations are doing this in MariaDB 10.3, but not TRUNCATE TABLE.