Yes, as you says there is a list of modules that can do this in Drupal 7 like:
Node Revision Delete
The Node Revision Delete module lets you to track and prune old
revisions of content types. Define the max amount of revisions to keep
per content type. Run on Drush, cron run or on a different period
(daily, weekly, etc).
Node Revision Restrict
The Node Revision Restrict module allows you to restrict revisions of
node for each content type. This module has an admin interface to
specify node revision threshold for each content type available. The
possible setting include node type with corresponding revision limit,
provided on the Node Revision Restrict configuration form. Note that
this module does not and cannot delete the current revisions of a
node.
Node Revision Cleanup
Node Revision Cleanup is designed for really big databases. And site
administrators who are comfortable with Drush. The concept behind this
module is to be able to run multiple invocations at the same time, via
Drush to maximize the number of node revision deletions per second.
Revision Deletion
This modules enables the ability to mass delete aging node revisions.
Possible settings include node type, the age of node revision before
being deleted, along with a Cron frequency setting. The revisions may
be deleted after review on an administer page as well. This module
will NEVER delete the current revision of a node, nor will it allow
you to do so.
And for Drupal 8, well at this moment there is not module for do that, but you can use:
To get the revision list of a node:
$vids = \Drupal::entityManager()->getStorage('node')->revisionIds($node);
See Nodes now have a storage controller; node_revision_list() removed.
To delete a revision revision you can use the node_revision_delete() function, but at the end see the function code:
function node_revision_delete($revision_id) {
\Drupal::entityTypeManager()->getStorage('node')->deleteRevision($revision_id);
}
So, is better if you just use:
\Drupal::entityTypeManager()->getStorage('node')->deleteRevision($revision_id);