Adds .gitignore checks to reduce blame calls

Caches failed blames to reduce blame calls
Only clear failed blames from cache on change/save
Add better error messages and handling
This commit is contained in:
Eric Amodio
2016-09-14 13:30:14 -04:00
parent dfd17a8f17
commit fba6def3e4
7 changed files with 190 additions and 82 deletions

View File

@@ -28,6 +28,9 @@ export default class GitBlameCodeLensProvider implements CodeLensProvider {
const sha = data.sha;
return this.git.getBlameForFile(fileName).then(blame => {
const lenses: CodeLens[] = [];
if (!blame) return lenses;
const commits = Array.from(blame.commits.values());
let index = commits.findIndex(c => c.sha === sha) + 1;
@@ -36,8 +39,6 @@ export default class GitBlameCodeLensProvider implements CodeLensProvider {
previousCommit = commits[index];
}
const lenses: CodeLens[] = [];
// Add codelens to each "group" of blame lines
const lines = blame.lines.filter(l => l.sha === sha && l.originalLine >= data.range.start.line && l.originalLine <= data.range.end.line);
let lastLine = lines[0].originalLine;