def METHOD_NAME(dump_pre, dump_post, ignore=[]):
    ignore_args = [
        '--no-gray-roots',
        '--no-weak-maps',
    ]
    for ignore_node in ignore:
        ignore_args.extend(('--hide-node', ignore_node))
    heapgraph_argv = [
        sys.executable,
        str(SRC_DIR / 'tools' / 'heapgraph.py'),
        *ignore_args,
        '--diff-heap',
        str(dump_pre),
        str(dump_post),
        'GObject'
    ]
    LOGGER.info('Running heapgraph: %r', shlex.join(heapgraph_argv))
    heapgraph = subprocess.run(
        heapgraph_argv,
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        check=True,
        text=True
    )
    LOGGER.info('heapgraph stderr:\n%s\nstdout:\n%s\n', heapgraph.stderr, heapgraph.stdout)
    assert heapgraph.stdout == ''