Skip to content

Commit da44414

Browse files
committed
Hopefully fix ratelimits on diffs
1 parent c751861 commit da44414

File tree

3 files changed

+8
-23
lines changed

3 files changed

+8
-23
lines changed

src/main/java/net/neoforged/automation/command/BackportCommand.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import net.neoforged.automation.runner.GitRunner;
88
import net.neoforged.automation.util.DiffUtils;
99
import net.neoforged.automation.util.FunctionalInterfaces;
10-
import net.neoforged.automation.util.Util;
1110
import net.neoforged.automation.webhook.handler.AutomaticLabelHandler;
1211
import org.eclipse.jgit.transport.RefSpec;
1312
import org.jetbrains.annotations.Nullable;
@@ -106,9 +105,7 @@ public static void generateAndApply(GitHub gh, GHPullRequest pr, Configuration c
106105
}
107106
}
108107

109-
try (var is = GitHubAccessor.readDiff(pr)) {
110-
runner.writeFile("__diff", new String(is.readAllBytes()));
111-
}
108+
runner.writeFile("__diff", GitHubAccessor.readDiff(pr));
112109
runner.git("apply", "--ignore-whitespace", "__diff");
113110
runner.exec("rm", "__diff");
114111

@@ -219,7 +216,7 @@ private static void run(ActionRunner runner, Configuration.ConditionalValue<Stri
219216
return Map.of(
220217
"pr", Map.of(
221218
"base", pr.getBase().getRef(),
222-
"changedFiles", DiffUtils.detectChangedFiles(Util.readLines(GitHubAccessor.readDiff(pr)))
219+
"changedFiles", DiffUtils.detectChangedFiles(GitHubAccessor.readDiff(pr).trim().split("\n"))
223220
),
224221
"target", branch
225222
);
Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,7 @@
11
package net.neoforged.automation.util;
22

3-
import java.io.InputStream;
4-
import java.nio.charset.StandardCharsets;
5-
63
public class Util {
74
public static <E extends Throwable> void sneakyThrow(Throwable e) throws E {
85
throw (E) e;
96
}
10-
11-
public static String[] readLines(InputStream i) {
12-
try (var in = i) {
13-
return new String(in.readAllBytes(), StandardCharsets.UTF_8).split("\n");
14-
} catch (Exception ex) {
15-
sneakyThrow(ex);
16-
return new String[0];
17-
}
18-
}
197
}

src/main/java/org/kohsuke/github/GitHubAccessor.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import org.kohsuke.github.function.InputStreamFunction;
2222

2323
import java.io.IOException;
24-
import java.io.InputStream;
2524
import java.io.StringReader;
2625
import java.net.URI;
2726
import java.nio.charset.StandardCharsets;
@@ -177,14 +176,15 @@ public static GHLabel getLabel(GHRepository repo, String name) {
177176
}
178177
}
179178

180-
public static InputStream readDiff(GHPullRequest pr) {
179+
public static String readDiff(GHPullRequest pr) {
181180
try {
182-
var conn = pr.getDiffUrl().openConnection();
183-
conn.setRequestProperty("Authorization", pr.root().getClient().getEncodedAuthorization());
184-
return conn.getInputStream();
181+
return pr.root().createRequest()
182+
.withAccept("application/vnd.github.diff")
183+
.withUrlPath(pr.getApiRoute())
184+
.fetchStream(s -> new String(s.readAllBytes(), StandardCharsets.UTF_8));
185185
} catch (Exception ex) {
186186
Util.sneakyThrow(ex);
187-
return null;
187+
return "";
188188
}
189189
}
190190
}

0 commit comments

Comments
 (0)