Skip to content

Commit d93cd2b

Browse files
committed
Async Task.Run where possible
1 parent cdb6bc8 commit d93cd2b

File tree

101 files changed

+392
-1521
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+392
-1521
lines changed

src/Commands/Blame.cs

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,6 @@ public Blame(string repo, string file, string revision)
2020
_result.File = file;
2121
}
2222

23-
public Models.BlameData Result()
24-
{
25-
var rs = ReadToEnd();
26-
if (!rs.IsSuccess)
27-
return _result;
28-
29-
var lines = rs.StdOut.Split(['\r', '\n'], StringSplitOptions.RemoveEmptyEntries);
30-
foreach (var line in lines)
31-
{
32-
ParseLine(line);
33-
34-
if (_result.IsBinary)
35-
break;
36-
}
37-
38-
if (_needUnifyCommitSHA)
39-
{
40-
foreach (var line in _result.LineInfos)
41-
{
42-
if (line.CommitSHA.Length > _minSHALen)
43-
{
44-
line.CommitSHA = line.CommitSHA.Substring(0, _minSHALen);
45-
}
46-
}
47-
}
48-
49-
_result.Content = _content.ToString();
50-
return _result;
51-
}
52-
5323
public async Task<Models.BlameData> ResultAsync()
5424
{
5525
var rs = await ReadToEndAsync();

src/Commands/Branch.cs

Lines changed: 0 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -14,73 +14,6 @@ public static string ShowCurrent(string repo)
1414
return cmd.ReadToEnd().StdOut.Trim();
1515
}
1616

17-
public static bool Create(string repo, string name, string basedOn, bool force, Models.ICommandLog log)
18-
{
19-
var builder = new StringBuilder();
20-
builder.Append("branch ");
21-
if (force)
22-
builder.Append("-f ");
23-
builder.Append(name);
24-
builder.Append(" ");
25-
builder.Append(basedOn);
26-
27-
var cmd = new Command();
28-
cmd.WorkingDirectory = repo;
29-
cmd.Context = repo;
30-
cmd.Args = builder.ToString();
31-
cmd.Log = log;
32-
return cmd.Exec();
33-
}
34-
35-
public static bool Rename(string repo, string name, string to, Models.ICommandLog log)
36-
{
37-
var cmd = new Command();
38-
cmd.WorkingDirectory = repo;
39-
cmd.Context = repo;
40-
cmd.Args = $"branch -M {name} {to}";
41-
cmd.Log = log;
42-
return cmd.Exec();
43-
}
44-
45-
public static bool SetUpstream(string repo, string name, string upstream, Models.ICommandLog log)
46-
{
47-
var cmd = new Command();
48-
cmd.WorkingDirectory = repo;
49-
cmd.Context = repo;
50-
cmd.Log = log;
51-
52-
if (string.IsNullOrEmpty(upstream))
53-
cmd.Args = $"branch {name} --unset-upstream";
54-
else
55-
cmd.Args = $"branch {name} -u {upstream}";
56-
57-
return cmd.Exec();
58-
}
59-
60-
public static bool DeleteLocal(string repo, string name, Models.ICommandLog log)
61-
{
62-
var cmd = new Command();
63-
cmd.WorkingDirectory = repo;
64-
cmd.Context = repo;
65-
cmd.Args = $"branch -D {name}";
66-
cmd.Log = log;
67-
return cmd.Exec();
68-
}
69-
70-
public static bool DeleteRemote(string repo, string remote, string name, Models.ICommandLog log)
71-
{
72-
bool exists = new Remote(repo).HasBranch(remote, name);
73-
if (exists)
74-
return new Push(repo, remote, $"refs/heads/{name}", true) { Log = log }.Exec();
75-
76-
var cmd = new Command();
77-
cmd.WorkingDirectory = repo;
78-
cmd.Context = repo;
79-
cmd.Args = $"branch -D -r {remote}/{name}";
80-
cmd.Log = log;
81-
return cmd.Exec();
82-
}
83-
8417
public static async Task<string> ShowCurrentAsync(string repo)
8518
{
8619
var cmd = new Command();

src/Commands/Checkout.cs

Lines changed: 0 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -12,74 +12,6 @@ public Checkout(string repo)
1212
Context = repo;
1313
}
1414

15-
public bool Branch(string branch, bool force)
16-
{
17-
var builder = new StringBuilder();
18-
builder.Append("checkout --progress ");
19-
if (force)
20-
builder.Append("--force ");
21-
builder.Append(branch);
22-
23-
Args = builder.ToString();
24-
return Exec();
25-
}
26-
27-
public bool Branch(string branch, string basedOn, bool force, bool allowOverwrite)
28-
{
29-
var builder = new StringBuilder();
30-
builder.Append("checkout --progress ");
31-
if (force)
32-
builder.Append("--force ");
33-
builder.Append(allowOverwrite ? "-B " : "-b ");
34-
builder.Append(branch);
35-
builder.Append(" ");
36-
builder.Append(basedOn);
37-
38-
Args = builder.ToString();
39-
return Exec();
40-
}
41-
42-
public bool Commit(string commitId, bool force)
43-
{
44-
var option = force ? "--force" : string.Empty;
45-
Args = $"checkout {option} --detach --progress {commitId}";
46-
return Exec();
47-
}
48-
49-
public bool UseTheirs(List<string> files)
50-
{
51-
var builder = new StringBuilder();
52-
builder.Append("checkout --theirs --");
53-
foreach (var f in files)
54-
{
55-
builder.Append(" \"");
56-
builder.Append(f);
57-
builder.Append("\"");
58-
}
59-
Args = builder.ToString();
60-
return Exec();
61-
}
62-
63-
public bool UseMine(List<string> files)
64-
{
65-
var builder = new StringBuilder();
66-
builder.Append("checkout --ours --");
67-
foreach (var f in files)
68-
{
69-
builder.Append(" \"");
70-
builder.Append(f);
71-
builder.Append("\"");
72-
}
73-
Args = builder.ToString();
74-
return Exec();
75-
}
76-
77-
public bool FileWithRevision(string file, string revision)
78-
{
79-
Args = $"checkout --no-overlay {revision} -- \"{file}\"";
80-
return Exec();
81-
}
82-
8315
public async Task<bool> BranchAsync(string branch, bool force)
8416
{
8517
var builder = new StringBuilder();

src/Commands/Commit.cs

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,6 @@ public Commit(string repo, string message, bool signOff, bool amend, bool resetA
1919
Args += resetAuthor ? " --amend --reset-author --no-edit" : " --amend --no-edit";
2020
}
2121

22-
public bool Run()
23-
{
24-
var succ = Exec();
25-
26-
try
27-
{
28-
File.Delete(_tmpFile);
29-
}
30-
catch
31-
{
32-
// Ignore
33-
}
34-
35-
return succ;
36-
}
37-
3822
public async Task<bool> RunAsync()
3923
{
4024
var succ = await ExecAsync();

src/Commands/CountLocalChangesWithoutUntracked.cs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,6 @@ public CountLocalChangesWithoutUntracked(string repo)
1212
Args = "--no-optional-locks status -uno --ignore-submodules=all --porcelain";
1313
}
1414

15-
public int Result()
16-
{
17-
var rs = ReadToEnd();
18-
if (rs.IsSuccess)
19-
{
20-
var lines = rs.StdOut.Split(['\r', '\n'], StringSplitOptions.RemoveEmptyEntries);
21-
return lines.Length;
22-
}
23-
24-
return 0;
25-
}
26-
2715
public async Task<int> ResultAsync()
2816
{
2917
var rs = await ReadToEndAsync();

src/Commands/Diff.cs

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -36,36 +36,6 @@ public Diff(string repo, Models.DiffOption opt, int unified, bool ignoreWhitespa
3636
Args = $"diff --no-ext-diff --patch --unified={unified} {opt}";
3737
}
3838

39-
public Models.DiffResult Result()
40-
{
41-
var rs = ReadToEnd();
42-
var start = 0;
43-
var end = rs.StdOut.IndexOf('\n', start);
44-
while (end > 0)
45-
{
46-
var line = rs.StdOut.Substring(start, end - start);
47-
ParseLine(line);
48-
49-
start = end + 1;
50-
end = rs.StdOut.IndexOf('\n', start);
51-
}
52-
53-
if (start < rs.StdOut.Length)
54-
ParseLine(rs.StdOut.Substring(start));
55-
56-
if (_result.IsBinary || _result.IsLFS || _result.TextDiff.Lines.Count == 0)
57-
{
58-
_result.TextDiff = null;
59-
}
60-
else
61-
{
62-
ProcessInlineHighlights();
63-
_result.TextDiff.MaxLineNumber = Math.Max(_newLine, _oldLine);
64-
}
65-
66-
return _result;
67-
}
68-
6939
public async Task<Models.DiffResult> ResultAsync()
7040
{
7141
var rs = await ReadToEndAsync();

src/Commands/Discard.cs

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -7,43 +7,6 @@ namespace SourceGit.Commands
77
{
88
public static class Discard
99
{
10-
/// <summary>
11-
/// Discard all local changes (unstaged & staged)
12-
/// </summary>
13-
/// <param name="repo"></param>
14-
/// <param name="includeIgnored"></param>
15-
/// <param name="log"></param>
16-
public static void All(string repo, bool includeIgnored, Models.ICommandLog log)
17-
{
18-
var changes = new QueryLocalChanges(repo).Result();
19-
try
20-
{
21-
foreach (var c in changes)
22-
{
23-
if (c.WorkTree == Models.ChangeState.Untracked ||
24-
c.WorkTree == Models.ChangeState.Added ||
25-
c.Index == Models.ChangeState.Added ||
26-
c.Index == Models.ChangeState.Renamed)
27-
{
28-
var fullPath = Path.Combine(repo, c.Path);
29-
if (Directory.Exists(fullPath))
30-
Directory.Delete(fullPath, true);
31-
else
32-
File.Delete(fullPath);
33-
}
34-
}
35-
}
36-
catch (Exception e)
37-
{
38-
App.RaiseException(repo, $"Failed to discard changes. Reason: {e.Message}");
39-
}
40-
41-
new Reset(repo, "HEAD", "--hard") { Log = log }.Exec();
42-
43-
if (includeIgnored)
44-
new Clean(repo) { Log = log }.Exec();
45-
}
46-
4710
/// <summary>
4811
/// Discard selected changes (only unstaged).
4912
/// </summary>

src/Commands/GenerateCommitMessage.cs

Lines changed: 0 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -30,65 +30,6 @@ public GenerateCommitMessage(Models.OpenAIService service, string repo, List<Mod
3030
_onResponse = onResponse;
3131
}
3232

33-
public void Exec()
34-
{
35-
try
36-
{
37-
_onResponse?.Invoke("Waiting for pre-file analyzing to completed...\n\n");
38-
39-
var responseBuilder = new StringBuilder();
40-
var summaryBuilder = new StringBuilder();
41-
foreach (var change in _changes)
42-
{
43-
if (_cancelToken.IsCancellationRequested)
44-
return;
45-
46-
responseBuilder.Append("- ");
47-
summaryBuilder.Append("- ");
48-
49-
var rs = new GetDiffContent(_repo, new Models.DiffOption(change, false)).ReadToEnd();
50-
if (rs.IsSuccess)
51-
{
52-
_service.Chat(
53-
_service.AnalyzeDiffPrompt,
54-
$"Here is the `git diff` output: {rs.StdOut}",
55-
_cancelToken,
56-
update =>
57-
{
58-
responseBuilder.Append(update);
59-
summaryBuilder.Append(update);
60-
61-
_onResponse?.Invoke($"Waiting for pre-file analyzing to completed...\n\n{responseBuilder}");
62-
});
63-
}
64-
65-
responseBuilder.Append("\n");
66-
summaryBuilder.Append("(file: ");
67-
summaryBuilder.Append(change.Path);
68-
summaryBuilder.Append(")\n");
69-
}
70-
71-
if (_cancelToken.IsCancellationRequested)
72-
return;
73-
74-
var responseBody = responseBuilder.ToString();
75-
var subjectBuilder = new StringBuilder();
76-
_service.Chat(
77-
_service.GenerateSubjectPrompt,
78-
$"Here are the summaries changes:\n{summaryBuilder}",
79-
_cancelToken,
80-
update =>
81-
{
82-
subjectBuilder.Append(update);
83-
_onResponse?.Invoke($"{subjectBuilder}\n\n{responseBody}");
84-
});
85-
}
86-
catch (Exception e)
87-
{
88-
App.RaiseException(_repo, $"Failed to generate commit message: {e}");
89-
}
90-
}
91-
9233
public async Task ExecAsync()
9334
{
9435
try

0 commit comments

Comments
 (0)