SF #737473: Show up-to-date source code in tracebacks always.
And add an optional argument 'filename' to linecache.checkcache()
to enable checking caches per-file.
diff --git a/Lib/traceback.py b/Lib/traceback.py
index cf78648..95cde2b 100644
--- a/Lib/traceback.py
+++ b/Lib/traceback.py
@@ -65,6 +65,7 @@
         name = co.co_name
         _print(file,
                '  File "%s", line %d, in %s' % (filename,lineno,name))
+        linecache.checkcache(filename)
         line = linecache.getline(filename, lineno)
         if line: _print(file, '    ' + line.strip())
         tb = tb.tb_next
@@ -96,6 +97,7 @@
         co = f.f_code
         filename = co.co_filename
         name = co.co_name
+        linecache.checkcache(filename)
         line = linecache.getline(filename, lineno)
         if line: line = line.strip()
         else: line = None
@@ -277,6 +279,7 @@
         co = f.f_code
         filename = co.co_filename
         name = co.co_name
+        linecache.checkcache(filename)
         line = linecache.getline(filename, lineno)
         if line: line = line.strip()
         else: line = None