diff --git a/src/main/resources/META-INF/native-image/reflect-config.json b/src/main/resources/META-INF/native-image/reflect-config.json index 0fe8e95..ff66886 100644 --- a/src/main/resources/META-INF/native-image/reflect-config.json +++ b/src/main/resources/META-INF/native-image/reflect-config.json @@ -897,7 +897,7 @@ "name":"io.github.reactivecircus.kstreamlined.backend.datasource.RealFeedDataSource", "allDeclaredFields":true, "queryAllDeclaredMethods":true, - "methods":[{"name":"close","parameterTypes":[] }, {"name":"loadKotlinBlogFeed","parameterTypes":["kotlin.coroutines.Continuation"] }, {"name":"loadKotlinBlogFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadKotlinWeeklyFeed","parameterTypes":["kotlin.coroutines.Continuation"] }, {"name":"loadKotlinWeeklyFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadKotlinYouTubeFeed","parameterTypes":["kotlin.coroutines.Continuation"] }, {"name":"loadKotlinYouTubeFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadTalkingKotlinFeed","parameterTypes":["kotlin.coroutines.Continuation"] }, {"name":"loadTalkingKotlinFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"shutdown","parameterTypes":[] }] + "methods":[{"name":"close","parameterTypes":[] }, {"name":"loadKotlinBlogFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadKotlinWeeklyFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadKotlinYouTubeFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"loadTalkingKotlinFeed","parameterTypes":["boolean","kotlin.coroutines.Continuation"] }, {"name":"shutdown","parameterTypes":[] }] }, { "name":"io.github.reactivecircus.kstreamlined.backend.datasource.RealKotlinWeeklyIssueDataSource", @@ -975,10 +975,16 @@ "name":"io.ktor.client.HttpClient", "fields":[{"name":"closed"}] }, +{ + "name":"io.ktor.client.HttpClientConfig" +}, { "name":"io.ktor.client.call.HttpClientCall", "fields":[{"name":"received"}] }, +{ + "name":"io.ktor.client.content.ProgressListener" +}, { "name":"io.ktor.client.engine.HttpClientEngine", "queryAllDeclaredMethods":true, @@ -990,23 +996,53 @@ "queryAllDeclaredMethods":true, "methods":[{"name":"getDispatcher","parameterTypes":[] }, {"name":"install","parameterTypes":["io.ktor.client.HttpClient"] }] }, +{ + "name":"io.ktor.client.engine.HttpClientEngineCapability" +}, +{ + "name":"io.ktor.client.engine.HttpClientEngineConfig" +}, { "name":"io.ktor.client.engine.okhttp.OkHttpEngine", "allDeclaredFields":true, "queryAllDeclaredMethods":true, "methods":[{"name":"close","parameterTypes":[] }, {"name":"execute","parameterTypes":["io.ktor.client.request.HttpRequestData","kotlin.coroutines.Continuation"] }, {"name":"getConfig","parameterTypes":[] }, {"name":"getCoroutineContext","parameterTypes":[] }, {"name":"getSupportedCapabilities","parameterTypes":[] }] }, +{ + "name":"io.ktor.client.plugins.HttpSend" +}, +{ + "name":"io.ktor.client.plugins.HttpTimeoutConfig" +}, +{ + "name":"io.ktor.client.plugins.api.ClientPlugin" +}, +{ + "name":"io.ktor.client.plugins.api.ClientPluginBuilder" +}, +{ + "name":"io.ktor.client.plugins.api.ClientPluginInstance" +}, { "name":"io.ktor.client.plugins.internal.ByteChannelReplay", "fields":[{"name":"content"}] }, +{ + "name":"io.ktor.client.request.ResponseAdapter" +}, { "name":"io.ktor.serialization.kotlinx.json.KotlinxSerializationJsonExtensionProvider" }, +{ + "name":"io.ktor.util.Attributes" +}, { "name":"io.ktor.util.collections.CopyOnWriteHashMap", "fields":[{"name":"current"}] }, +{ + "name":"io.ktor.util.reflect.TypeInfo" +}, { "name":"io.ktor.utils.io.ByteChannel", "fields":[{"name":"_closedCause"}, {"name":"suspensionSlot"}] @@ -1159,10 +1195,6 @@ "name":"io.netty.util.ReferenceCountUtil", "queryAllDeclaredMethods":true }, -{ - "name":"io.netty.util.ResourceLeakDetector$DefaultResourceLeak", - "fields":[{"name":"droppedRecords"}, {"name":"head"}] -}, { "name":"io.netty.util.concurrent.DefaultPromise", "fields":[{"name":"result"}] @@ -1497,6 +1529,9 @@ { "name":"java.util.List" }, +{ + "name":"java.util.Map" +}, { "name":"java.util.Optional" }, @@ -1623,6 +1658,15 @@ "name":"kotlin.Deprecated", "queryAllDeclaredMethods":true }, +{ + "name":"kotlin.ExtensionFunctionType" +}, +{ + "name":"kotlin.Function0" +}, +{ + "name":"kotlin.Function1" +}, { "name":"kotlin.Int" }, @@ -1642,6 +1686,9 @@ { "name":"kotlin.String" }, +{ + "name":"kotlin.Unit" +}, { "name":"kotlin.annotation.AnnotationRetention" }, @@ -1665,10 +1712,13 @@ "name":"kotlin.collections.List" }, { - "name":"kotlin.coroutines.Continuation" + "name":"kotlin.collections.Map" }, { - "name":"kotlin.coroutines.jvm.internal.BaseContinuationImpl" + "name":"kotlin.collections.MutableMap" +}, +{ + "name":"kotlin.coroutines.Continuation" }, { "name":"kotlin.coroutines.jvm.internal.DebugMetadata", @@ -1732,9 +1782,6 @@ "queryAllDeclaredMethods":true, "queryAllPublicMethods":true }, -{ - "name":"kotlinx.coroutines.DispatchedTask" -}, { "name":"kotlinx.coroutines.EventLoopImplBase", "fields":[{"name":"_delayed$volatile"}, {"name":"_isCompleted$volatile"}, {"name":"_queue$volatile"}] @@ -1766,9 +1813,6 @@ "name":"kotlinx.coroutines.internal.LimitedDispatcher", "fields":[{"name":"runningWorkers$volatile"}] }, -{ - "name":"kotlinx.coroutines.internal.LimitedDispatcher$Worker" -}, { "name":"kotlinx.coroutines.internal.LockFreeLinkedListNode", "fields":[{"name":"_next$volatile"}, {"name":"_prev$volatile"}, {"name":"_removedRef$volatile"}] @@ -1796,9 +1840,6 @@ "name":"kotlinx.coroutines.scheduling.CoroutineScheduler$Worker", "fields":[{"name":"workerCtl$volatile"}] }, -{ - "name":"kotlinx.coroutines.scheduling.TaskImpl" -}, { "name":"kotlinx.coroutines.scheduling.WorkQueue", "fields":[{"name":"blockingTasksInBuffer$volatile"}, {"name":"consumerIndex$volatile"}, {"name":"lastScheduledTask$volatile"}, {"name":"producerIndex$volatile"}] @@ -1826,6 +1867,9 @@ { "name":"liquibase.change.DatabaseChange" }, +{ + "name":"nl.adaptivity.xmlutil.jdk.StAXStreamingFactory" +}, { "name":"nl.adaptivity.xmlutil.serialization.XmlElement", "queryAllDeclaredMethods":true @@ -1870,6 +1914,17 @@ { "name":"org.apache.tomcat.websocket.server.WsHttpUpgradeHandler" }, +{ + "name":"org.apache.xerces.impl.dv.dtd.DTDDVFactoryImpl", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"org.apache.xerces.jaxp.DocumentBuilderFactoryImpl" +}, +{ + "name":"org.apache.xerces.parsers.XIncludeAwareParserConfiguration", + "methods":[{"name":"","parameterTypes":[] }] +}, { "name":"org.aspectj.weaver.Advice" }, @@ -4290,10 +4345,30 @@ "name":"reactor.core.publisher.FluxFirstWithSignal$RaceCoordinator", "fields":[{"name":"winner"}] }, +{ + "name":"reactor.core.publisher.FluxGenerate$GenerateSubscription", + "fields":[{"name":"requested"}] +}, { "name":"reactor.core.publisher.FluxIterable$IterableSubscription", "fields":[{"name":"requested"}] }, +{ + "name":"reactor.core.publisher.FluxLimitRequest$FluxLimitRequestSubscriber", + "fields":[{"name":"requestRemaining"}] +}, +{ + "name":"reactor.core.publisher.FluxOnErrorReturn$ReturnSubscriber", + "fields":[{"name":"requested"}] +}, +{ + "name":"reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber", + "fields":[{"name":"requested"}, {"name":"s"}, {"name":"thread"}] +}, +{ + "name":"reactor.core.publisher.FluxUsing$UsingFuseableSubscriber", + "fields":[{"name":"wip"}] +}, { "name":"reactor.core.publisher.Hooks" }, @@ -4332,6 +4407,10 @@ "name":"reactor.core.publisher.MonoNext$NextSubscriber", "fields":[{"name":"wip"}] }, +{ + "name":"reactor.core.publisher.MonoSubscribeOn$SubscribeOnSubscriber", + "fields":[{"name":"requested"}, {"name":"s"}, {"name":"thread"}] +}, { "name":"reactor.core.publisher.MonoWhen$WhenCoordinator", "fields":[{"name":"state"}] @@ -4376,6 +4455,10 @@ "name":"reactor.core.scheduler.BoundedElasticScheduler$BoundedState", "fields":[{"name":"markCount"}] }, +{ + "name":"reactor.core.scheduler.WorkerTask", + "fields":[{"name":"future"}, {"name":"parent"}, {"name":"thread"}] +}, { "name":"reactor.netty.channel.ChannelOperations", "fields":[{"name":"outboundSubscription"}] @@ -4388,6 +4471,10 @@ "name":"reactor.netty.channel.FluxReceive", "fields":[{"name":"receiverCancel"}] }, +{ + "name":"reactor.netty.channel.MonoSendMany$SendManyInner", + "fields":[{"name":"s"}, {"name":"wip"}] +}, { "name":"reactor.netty.contextpropagation.ChannelContextAccessor" }, @@ -4436,13 +4523,21 @@ { "name":"reactor.tools.agent.ReactorDebugAgent" }, +{ + "name":"reactor.util.concurrent.SpscArrayQueueConsumer", + "fields":[{"name":"consumerIndex"}] +}, +{ + "name":"reactor.util.concurrent.SpscArrayQueueProducer", + "fields":[{"name":"producerIndex"}] +}, { "name":"reactor.util.context.ReactorContextAccessor" }, { "name":"sun.misc.Unsafe", "fields":[{"name":"theUnsafe"}], - "methods":[{"name":"addressSize","parameterTypes":[] }, {"name":"allocateMemory","parameterTypes":["long"] }, {"name":"arrayBaseOffset","parameterTypes":["java.lang.Class"] }, {"name":"arrayIndexScale","parameterTypes":["java.lang.Class"] }, {"name":"copyMemory","parameterTypes":["java.lang.Object","long","java.lang.Object","long","long"] }, {"name":"freeMemory","parameterTypes":["long"] }, {"name":"getAndAddLong","parameterTypes":["java.lang.Object","long","long"] }, {"name":"getAndSetObject","parameterTypes":["java.lang.Object","long","java.lang.Object"] }, {"name":"getBoolean","parameterTypes":["java.lang.Object","long"] }, {"name":"getByte","parameterTypes":["long"] }, {"name":"getByte","parameterTypes":["java.lang.Object","long"] }, {"name":"getInt","parameterTypes":["long"] }, {"name":"getInt","parameterTypes":["java.lang.Object","long"] }, {"name":"getLong","parameterTypes":["long"] }, {"name":"getLong","parameterTypes":["java.lang.Object","long"] }, {"name":"invokeCleaner","parameterTypes":["java.nio.ByteBuffer"] }, {"name":"objectFieldOffset","parameterTypes":["java.lang.reflect.Field"] }, {"name":"putByte","parameterTypes":["long","byte"] }, {"name":"putByte","parameterTypes":["java.lang.Object","long","byte"] }, {"name":"putInt","parameterTypes":["long","int"] }, {"name":"putInt","parameterTypes":["java.lang.Object","long","int"] }, {"name":"putLong","parameterTypes":["long","long"] }, {"name":"putLong","parameterTypes":["java.lang.Object","long","long"] }, {"name":"reallocateMemory","parameterTypes":["long","long"] }, {"name":"setMemory","parameterTypes":["long","long","byte"] }, {"name":"setMemory","parameterTypes":["java.lang.Object","long","long","byte"] }, {"name":"staticFieldBase","parameterTypes":["java.lang.reflect.Field"] }, {"name":"staticFieldOffset","parameterTypes":["java.lang.reflect.Field"] }, {"name":"storeFence","parameterTypes":[] }] + "methods":[{"name":"copyMemory","parameterTypes":["java.lang.Object","long","java.lang.Object","long","long"] }, {"name":"getAndAddLong","parameterTypes":["java.lang.Object","long","long"] }, {"name":"getAndSetObject","parameterTypes":["java.lang.Object","long","java.lang.Object"] }, {"name":"invokeCleaner","parameterTypes":["java.nio.ByteBuffer"] }, {"name":"storeFence","parameterTypes":[] }] }, { "name":"sun.nio.ch.SelectorImpl", diff --git a/src/main/resources/META-INF/native-image/resource-config.json b/src/main/resources/META-INF/native-image/resource-config.json index a591403..b67e805 100644 --- a/src/main/resources/META-INF/native-image/resource-config.json +++ b/src/main/resources/META-INF/native-image/resource-config.json @@ -26,12 +26,18 @@ "pattern":"\\QMETA-INF/services/java.time.zone.ZoneRulesProvider\\E" }, { "pattern":"\\QMETA-INF/services/java.util.spi.ResourceBundleControlProvider\\E" + }, { + "pattern":"\\QMETA-INF/services/javax.xml.parsers.DocumentBuilderFactory\\E" }, { "pattern":"\\QMETA-INF/services/javax.xml.stream.XMLInputFactory\\E" }, { "pattern":"\\QMETA-INF/services/kotlin.reflect.jvm.internal.impl.resolve.ExternalOverridabilityCondition\\E" }, { "pattern":"\\QMETA-INF/services/kotlin.reflect.jvm.internal.impl.util.ModuleVisibilityHelper\\E" + }, { + "pattern":"\\QMETA-INF/services/nl.adaptivity.xmlutil.XmlStreamingFactory\\E" + }, { + "pattern":"\\QMETA-INF/services/org.apache.xerces.xni.parser.XMLParserConfiguration\\E" }, { "pattern":"\\QMETA-INF/services/org.slf4j.spi.SLF4JServiceProvider\\E" }, {