mirror of
https://github.com/Athou/commafeed.git
synced 2026-10-16 09:21:11 +00:00
Revert "add support for zstd and brotli compression" because they use native libraries that need to be extracted in a temp folder which we want to avoid
This commit is contained in:
@@ -461,14 +461,6 @@
|
||||
<artifactId>ayza-for-apache5</artifactId>
|
||||
<version>10.1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.luben</groupId>
|
||||
<artifactId>zstd-jni</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.aayushatharva.brotli4j</groupId>
|
||||
<artifactId>brotli4j</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.seancfoley</groupId>
|
||||
<artifactId>ipaddress</artifactId>
|
||||
|
||||
@@ -6,6 +6,8 @@ import com.codahale.metrics.Histogram;
|
||||
import com.codahale.metrics.Meter;
|
||||
import com.codahale.metrics.MetricRegistry;
|
||||
import com.codahale.metrics.Timer;
|
||||
import com.oracle.svm.core.annotate.Substitute;
|
||||
import com.oracle.svm.core.annotate.TargetClass;
|
||||
|
||||
import io.quarkus.runtime.annotations.RegisterForReflection;
|
||||
|
||||
@@ -346,4 +348,22 @@ import io.quarkus.runtime.annotations.RegisterForReflection;
|
||||
com.rometools.opml.feed.synd.impl.ConverterForOPML10.class,
|
||||
com.rometools.opml.feed.synd.impl.ConverterForOPML20.class,
|
||||
})
|
||||
public class NativeImageClasses {}
|
||||
public class NativeImageClasses {
|
||||
|
||||
// disable zstd and brotli runtime detection because it causes native image failure
|
||||
@TargetClass(className = "org.apache.hc.client5.http.impl.ZstdRuntime")
|
||||
static final class ZstdRuntime {
|
||||
@Substitute
|
||||
public static boolean available() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@TargetClass(className = "org.apache.hc.client5.http.impl.Brotli4jRuntime")
|
||||
static final class Brotli4jRuntime {
|
||||
@Substitute
|
||||
public static boolean available() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,9 +20,7 @@ import nl.altindag.ssl.apache5.util.Apache5SslUtils;
|
||||
import org.apache.hc.client5.http.DnsResolver;
|
||||
import org.apache.hc.client5.http.SystemDefaultDnsResolver;
|
||||
import org.apache.hc.client5.http.async.methods.InflatingAsyncDataConsumer;
|
||||
import org.apache.hc.client5.http.async.methods.InflatingBrotliDataConsumer;
|
||||
import org.apache.hc.client5.http.async.methods.InflatingGzipDataConsumer;
|
||||
import org.apache.hc.client5.http.async.methods.InflatingZstdDataConsumer;
|
||||
import org.apache.hc.client5.http.config.ConnectionConfig;
|
||||
import org.apache.hc.client5.http.config.TlsConfig;
|
||||
import org.apache.hc.client5.http.entity.compress.ContentCoding;
|
||||
@@ -92,8 +90,6 @@ public class HttpClientFactory {
|
||||
contentDecoderMap.put(
|
||||
ContentCoding.DEFLATE.token(), d -> new InflatingAsyncDataConsumer(d, null));
|
||||
contentDecoderMap.put(ContentCoding.GZIP.token(), InflatingGzipDataConsumer::new);
|
||||
contentDecoderMap.put(ContentCoding.ZSTD.token(), InflatingZstdDataConsumer::new);
|
||||
contentDecoderMap.put(ContentCoding.BROTLI.token(), InflatingBrotliDataConsumer::new);
|
||||
|
||||
RedirectStrategy redirectStrategy =
|
||||
config.httpClient().blockLocalAddresses()
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.commafeed.backend;
|
||||
|
||||
import com.aayushatharva.brotli4j.encoder.BrotliOutputStream;
|
||||
import com.codahale.metrics.MetricRegistry;
|
||||
import com.commafeed.CommaFeedConfiguration;
|
||||
import com.commafeed.CommaFeedVersion;
|
||||
@@ -8,7 +7,6 @@ import com.commafeed.backend.HttpGetter.HttpResponseException;
|
||||
import com.commafeed.backend.HttpGetter.HttpResult;
|
||||
import com.commafeed.backend.HttpGetter.NotModifiedException;
|
||||
import com.commafeed.backend.HttpGetter.TooManyRequestsException;
|
||||
import com.github.luben.zstd.ZstdOutputStream;
|
||||
import com.google.common.net.HttpHeaders;
|
||||
|
||||
import io.quarkus.runtime.configuration.MemorySize;
|
||||
@@ -422,7 +420,7 @@ class HttpGetterTest {
|
||||
@Nested
|
||||
class Compression {
|
||||
|
||||
private static final String ACCEPT_ENCODING = "deflate, gzip, zstd, br";
|
||||
private static final String ACCEPT_ENCODING = "deflate, gzip";
|
||||
|
||||
@Test
|
||||
void gzip() throws Exception {
|
||||
@@ -434,16 +432,6 @@ class HttpGetterTest {
|
||||
supportsCompression("deflate", DeflaterOutputStream::new);
|
||||
}
|
||||
|
||||
@Test
|
||||
void zstd() throws Exception {
|
||||
supportsCompression("zstd", ZstdOutputStream::new);
|
||||
}
|
||||
|
||||
@Test
|
||||
void br() throws Exception {
|
||||
supportsCompression("br", BrotliOutputStream::new);
|
||||
}
|
||||
|
||||
void supportsCompression(String encoding, CompressionFunction compressionFunction)
|
||||
throws Exception {
|
||||
String body = "my body";
|
||||
|
||||
Reference in New Issue
Block a user