tree a81afcfbe2dd41aecee662ede2ec2b7f7542b5c1
parent e16467af0bfcc9f399df251495ff2d2ad20a1669
author Victor Stinner <vstinner@redhat.com> 1554812627 +0200
committer GitHub <noreply@github.com> 1554812627 +0200
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJcrI7TCRBK7hj4Ov3rIwAAdHIIABQET5/2fjHUe3UlN45giFbS
 4Jid087k+Gj0pqMfA4IRhblvgepEFBbi3iv42A6cC7jGZtKc7NP5iupmYWSKhKWn
 JUu94MER2rSae1dErM6920rGyd0o60i1gebDxJ3THTND5ggsvULRrDupPFSYLYYc
 gx5fgI4gtwtlqEOqZyGPSkD4io+Fyf0Z+qDhK7O2LBuVRrXUv+AlWptUzkZrvPmU
 CG3g8zD1CQqG1ca7X1mJOfut5iiFWgvn0l7vMmUJzKmJilTUUE8Iqppnk6ELLaPF
 LKMoO7N95BXJxEuZgTxxhrlxZpFqKQQ0Fd7AeTAFqydRYTOBrOPzZRcW7dt18gg=
 =6aKQ
 -----END PGP SIGNATURE-----
 

bpo-36560: Fix reference leak hunting in regrtest (GH-12744)

Fix reference leak hunting in regrtest: compute also deltas (of
reference count, allocated memory blocks, file descriptor count)
during warmup, to ensure that everything is initialized before
starting to hunt reference leaks.

Other changes:

* Replace gc.collect() with support.gc_collect()
* Move calls to read memory statistics from dash_R_cleanup() to
  dash_R()
* Pass regrtest 'ns' to dash_R()
* dash_R() is now more quiet with --quiet option (don't display
  progress).
* Precompute the full range for "for it in range(repcount):" to
  ensure that the iteration doesn't allocate anything new.
* dash_R() now is responsible to call warm_caches().