Unable to create native image NullPointerException

Hello,
I upgraded app to spring boot 2.3.1 and I am using spring-graalvm-native 0.7.1. The project has so many dependencies and one of them is logback. When I tried to create native image I got this error.
Error: Classes that should be initialized at run time got initialized during image building:
 org.springframework.boot.logging.logback.ColorConverter was unintentionally initialized at build time. org.slf4j.impl.StaticLoggerBinder caused initialization of this class with the following trace:
        at org.springframework.boot.logging.logback.ColorConverter.<clinit>(ColorConverter.java)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.lang.Class.newInstance(Class.java:442)
        at ch.qos.logback.core.util.OptionHelper.instantiateByClassNameAndParameter(OptionHelper.java:61)
        at ch.qos.logback.core.util.OptionHelper.instantiateByClassName(OptionHelper.java:45)
        at ch.qos.logback.core.util.OptionHelper.instantiateByClassName(OptionHelper.java:34)
        at ch.qos.logback.core.pattern.parser.Compiler.createCompositeConverter(Compiler.java:129)
        at ch.qos.logback.core.pattern.parser.Compiler.compile(Compiler.java:47)
        at ch.qos.logback.core.pattern.parser.Parser.compile(Parser.java:87)
        at ch.qos.logback.core.pattern.PatternLayoutBase.start(PatternLayoutBase.java:84)
        at ch.qos.logback.classic.encoder.PatternLayoutEncoder.start(PatternLayoutEncoder.java:28)
        at ch.qos.logback.core.joran.action.NestedComplexPropertyIA.end(NestedComplexPropertyIA.java:161)
        at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309)
        at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193)
        at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179)
        at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
        at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
        at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
        at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
        at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
        at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75)
        at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:150)
        at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
        at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)

The fix for the above issue was I had to renamae the logback.xml to logback-spring.xml. I hope this might be useful for someone in future.
Now When I try to create native image in windows 10 I got below error. any help would be appreciated
analysis: 2,106,404.76 ms, 14.22 GB
Fatal error:java.lang.NullPointerException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:598)
        at java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1005)
        at com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:463)
        at com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:359)
        at com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:518)
        at com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:117)
Caused by: java.lang.NullPointerException
        at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011)
        at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006)
        at com.oracle.svm.hosted.ClassValueFeature.duringAnalysis(ClassValueFeature.java:74)
        at com.oracle.svm.hosted.NativeImageGenerator.lambda$runPointsToAnalysis$8(NativeImageGenerator.java:720)
        at com.oracle.svm.hosted.FeatureHandler.forEachFeature(FeatureHandler.java:70)
        at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:720)
        at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:538)
        at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:451)
        at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Error: Image build request failed with exit status 1

I am not sure how to get debug log for graal vm so I connected my intellij to debug the running graal vm and I see that this is causing the NullPointerException. Any help would be appreciated

I see you raised this against both projects. Here and https://github.com/oracle/graal/issues/2734 - given the stack at the point of failure I am thinking it is more a Graal thing but it is possible we are doing something we shouldn't in our feature that is causing the problem. You could try a later graal. More recent builds are here: https://github.com/graalvm/graalvm-ce-dev-builds/releases - but we haven't tested up to date graal builds with the old 0.7.1 release of this project.

I see you raised this against both projects. Here and oracle/graal#2734 - given the stack at the point of failure I am thinking it is more a Graal thing but it is possible we are doing something we shouldn't in our feature that is causing the problem. You could try a later graal. More recent builds are here: https://github.com/graalvm/graalvm-ce-dev-builds/releases - but we haven't tested up to date graal builds with the old 0.7.1 release of this project.

Thanks for your advise. Let me try with recent graal vm build and post my updates here.

@aclement I tried to use 20.2.0-dev and 20.3.0-dev graal vm and both of them giving error when tying to use agent.
Error occurred during initialization of VM
Could not find agent library native-image-agent on the library path, with error: Can't find dependent libraries

Some backgroud why I am using agent:
I noticed that when I use spring graal native 0.8.0-SNAPSHOT I was not required to use agent and I was able to create native image for spring boot web app which is using spring boot 2.4.0-SNAPSHOT. But since both are snapshot not production ready, I was forced to use spring boot 2.3.1 and spring graal native 0.7.1. I was able to create image for simple spring boot hello world web app but when I tried to run, it said some beans are not able to initialize. So I had to use hybrid mode for spring boot 2.3.1 and spring graal native 0.7.1 to create native image for spring boot helloworld web app. Since I was able to create native image for spring boot 2.3.1 for helloworld web app,  I upgraded my project to spring boot 2.3.1 and tried creating native image and ran into NullPointerException.

@aclement Looks like there is a fix in graal for this issue
https://github.com/oracle/graal/pull/2728
I would like to move forward and I would not able to wait for this fix to be added into the build. So I copied the code they changed and used as below but now I am getting Error: Already registered: java.lang.ClassValue. Could you please advise me how can I move forward? I watched your spring one talk in youtube and you showed a sample substitute class for Resource but the target class defined in the youtube example was org.springframework.core.io.AbstractFileResolvingResource, but here I used as @TargetClass(java.lang.ClassValue.class). Is there any respective target spring class that I can use?
`package graal;
import com.oracle.svm.core.annotate.KeepOriginal;
import com.oracle.svm.core.annotate.RecomputeFieldValue;
import com.oracle.svm.core.annotate.Substitute;
import com.oracle.svm.core.annotate.TargetClass;
import com.oracle.svm.core.jdk.JavaLangSubstitutions;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
/**

We do not have dynamic class loading (and therefore no class unloading), so it is not necessary
to keep the complicated code that the JDK uses. However, our simple substitutions have a drawback
(not a problem for now):

We do not implement the complicated state machine semantics for concurrent calls to

{@link #get} and {@link #remove} that are explained in {@link ClassValue#remove}.

*/
@TargetClass(java.lang.ClassValue.class)
@Substitute
final class Target_java_lang_ClassValue {
//[I had to comment this one because I was getting compilation error]
//@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = JavaLangSubstitutions.ClassValueInitializer.class)//
private final ConcurrentMap<Class<?>, Object> values;

private static final Object NULL_MARKER = new Object();

@Substitute
private Target_java_lang_ClassValue() {
    values = new ConcurrentHashMap<>();
}

/*
 * This method cannot be declared private, because we need the Java compiler to create a
 * invokevirtual bytecode when invoking it.
 */
@KeepOriginal
native Object computeValue(Class<?> type);

@Substitute
private Object get(Class<?> type) {
    Object result = values.get(type);
    if (result == null) {
        Object newValue = computeValue(type);
        if (newValue == null) {
            /* values can't store null, replace with NULL_MARKER */
            newValue = NULL_MARKER;
        }
        Object oldValue = values.putIfAbsent(type, newValue);
        result = oldValue != null ? oldValue : newValue;
    }
    if (result == NULL_MARKER) {
        /* replace NULL_MARKER back to real null */
        result = null;
    }
    return result;
}

@Substitute
private void remove(Class<?> type) {
    values.remove(type);
}

}
`

When they supply a fix I just build my own Graal - I've not tried copying a substitution from their setup into ours. With what you have above doesn't that mean two substitutions active at the same time on the same target - how do you know yours applies last? I've had issues around this space before. I wonder if the fix is included in the images we build as part of our CI. If so you can use the run-dev-container.sh flow described here: https://github.com/spring-projects-experimental/spring-graalvm-native#using-container-based-build-environment to give yourself an environment with a dev build of graal (without needing to build it yourself) - but it does require docker. My built graals support the agent just fine so I'm not sure why you'd be having issues with that on the dev builds you can download.

@aclement I appreciate your reply. Thank you so much. I am trying out graal native image in my windows machine because the requirement was to create windows exe from spring boot project. I was not able to use comple.sh script that was present in the examples so I had to create equivalent windows batch script and that is what I am using now to compile native image for windows. Looks like the direction you pointed in your earlier message is more for linux and Mac. How can I create graal vm build in my windows machine. Thanks again.

Ooo, windows, yes, that'll make things tricky. We really should have our tests running on windows, its been on the list for a while. Some of the samples use maven rather than compile.sh so are agnostic but I've not built my own Graal on windows, I'll see if I can work it out.

I'm struggling to build it on windows, the steps from https://github.com/oracle/graal/blob/master/vm/README.md break for me "Missing exe suffix: graalvm-native-binutil". It occurred to me you could get around the problem of duplicate substitutions by deleting one from the graal package. If I search I see it in:
./Contents/Home/jre/lib/svm/builder/svm.jar contains   com/oracle/svm/core/jdk/Target_java_lang_ClassValue.class

just unpack that jar, delete that entry, then repack. something like:
cd .../svm/builder
cp svm.jar svm.jar.backup
mkdir repack
cd repack
jar -xvf ../svm.jar
rm -rf com/oracle/svm/core/jdk/Target_java_lang_ClassValue.class
jar -cvMf ../svm.jar *

Thank you @aclement for all your help. I unzipped the svm.jar file and removed the class Target_java_lang_ClassValue.class from svm.jar. And created jar again and placed it under C:\bin\graalvm-ce-java8-20.1.0\jre\lib\svm\builder. Placed the java file Target_java_lang_ClassValue.java inside graal package in my project and ran native-image build command and still it complains about Error: Already registered: java.lang.ClassValue. So I removed Target_java_lang_ClassValue.java from my project(its already removed from jar) and ran native-image and expected NoClassDefError but still got NullPointerException. So it looks to me like for some reason the changes I make in the jar is not getting into graal vm. Even I created class for Target_java_lang_ClassValue with PR code fix and replaced it in the jar still getting NullPointerException. Not sure what I am doing wrong.
Here is the screen shot as you can see I removed the class from jar but still error:java.lang.NullPointerException

That's a shame. I don't suppose the change you need got into the dev build from late last week? https://github.com/graalvm/graalvm-ce-dev-builds/releases (20200807? 20.3 or 20.2)

That was giving me native-image-agent not found. I think may be because I did not run gu install native-image after pointing PATH variable to the dev build. Let me try that. Thanks again for your quick response. Much appreciated.

@aclement Sorry to bug you again. I tried all dev release build (20.3 and 20.2) and for all of them I am seeing same error
Error: Already registered: java.lang.management.ManagementFactory.getPlatformMBeanServer()
com.oracle.svm.core.util.UserError$UserException: Already registered: java.lang.management.ManagementFactory.getPlatformMBeanServer()
        at com.oracle.svm.core.util.UserError.abort(UserError.java:68)
        at com.oracle.svm.core.util.UserError.guarantee(UserError.java:92)
        at com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.register(AnnotationSubstitutionProcessor.java:724)
        at com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.handleMethodInAliasClass(AnnotationSubstitutionProcessor.java:338)
        at com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.handleAliasClass(AnnotationSubstitutionProcessor.java:302)
        at com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.handleClass(AnnotationSubstitutionProcessor.java:274)
        at com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.init(AnnotationSubstitutionProcessor.java:230)
        at com.oracle.svm.hosted.NativeImageGenerator.createDeclarativeSubstitutionProcessor(NativeImageGenerator.java:915)
        at com.oracle.svm.hosted.NativeImageGenerator.setupNativeImage(NativeImageGenerator.java:852)
        at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:553)
        at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:468)
        at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:163)
Error: Image build request failed with exit status 1

I'm not sure what to suggest as it is a graal problem it seems (at the core). We could get into it with them on how to build graal on windows I suppose. Have you tried setting up your env to build it according to https://github.com/oracle/graal/blob/master/vm/README.md ? These are my own instructions that I use (on mac and linux):
git clone git@github.com:graalvm/mx.git
git clone git@github.com:oracle/graal.git

Add the mx folder to your PATH (so you can run the mx command within it).

Whether you get a Java8 or Java11 flavour of graal built depends on which JVMCI-enabled JDK you are pointing to with JAVA_HOME when you run the build process. Grab one of the pre-built JDKs from these locations:

Java8
https://github.com/graalvm/openjdk8-jvmci-builder/releases

Java11
https://github.com/graalvm/labs-openjdk-11/releases

export JAVA_HOME=/Users/aclement/jvms/<whatever_you_chose>/Contents/Home

Java8 is typically more reliable than Java11. We will work with both but testing both and making sure they are always working is slow. I’d probably just try Java8 whilst getting started.

To build it:

cd graal/vm

mx --dynamicimports /substratevm --disable-libpolyglot --disable-polyglot --force-bash-launchers=true --skip-libraries=jvmcicompiler build

This will put the new version in a directory sdk/latest_graalvm at the root of the graal clone

export JAVA_HOME=/Users/aclement/gits/graal/sdk/latest_graalvm_home
export PATH=$JAVA_HOME/bin:$PATH

-> java -version
openjdk version "11.0.5" 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-jvmci-19.3-b05-LTS)
OpenJDK 64-Bit GraalVM 20.0.0-dev (build 11.0.5+10-jvmci-19.3-b05-LTS, mixed mode, sharing)

-> native-image --version
GraalVM Version 20.0.0-dev

(Although I recognize those dev builds seem to be giving you a new problem...related to MBeanServer... so maybe you'll just hit that if you do build your own GraalVM).

Thank you for all the instruction. That is the next step I am going to try. I will try to create graalvm build myself and the instructions that you had given will help immensely.

@aclement Seeing this build errors

mx --dynamicimports /substratevm --disable-libpolyglot --disable-polyglot --force-bash-launchers=true --skip-libraries=jvmcicompiler build

Building com.oracle.svm.native.libchelper_amd64 with Ninja... [1/2] CC src\cpuid.obj FAILED: src/cpuid.obj cl -nologo -showIncludes -IC:\dev\apps\graal_build\graal\substratevm\src\com.oracle.svm.native.libchelper\include -Zi -O2 -D_LITTLE_ENDIAN -c C:\dev\apps\graal_build\graal\substratevm\src\com.oracle.svm.native.libchelper\src\cpuid.c -Fosrc\cpuid.obj c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\intrin.h(26) : fatal error C1083: Cannot open include file: 'ammintrin.h': No such file or directory ninja: build stopped: subcommand failed.

mx --env ce build

Missing exe suffix: graalvm-native-binutil

@aclement I added the code fix from the PR https://github.com/oracle/graal/pull/2728 and created graal vm build for windows by following your steps successfully.Thank you so much. I had to restart my machine after pointing JAVA_HOME to the new build that I created. Otherwise I was getting Error: Unknown arguments (something like that) and it was listing the most of the jars in the class path. I just mentioned this to help some one in future.
Anyway now I am not getting the NullPointerException. Now I am seeing this
Error: Classes that should be initialized at run time got initialized during image building:
 com.sun.jmx.remote.internal.IIOPHelper was unintentionally initialized at build time. com.sun.jmx.remote.internal.IIOPHelper has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. Try marking this class for build-time initialization with --initialize-at-build-time=com.sun.jmx.remote.internal.IIOPHelper

com.oracle.svm.core.util.UserError$UserException: Classes that should be initialized at run time got initialized during image building:
 com.sun.jmx.remote.internal.IIOPHelper was unintentionally initialized at build time. com.sun.jmx.remote.internal.IIOPHelper has been initialized without the native-image initialization instrumentation and the stack trace can't be tracked. Try marking this class for build-time initialization with --initialize-at-build-time=com.sun.jmx.remote.internal.IIOPHelper

        at com.oracle.svm.core.util.UserError.abort(UserError.java:68)
        at com.oracle.svm.hosted.classinitialization.ConfigurableClassInitialization.checkDelayedInitialization(ConfigurableClassInitialization.java:526)
        at com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.duringAnalysis(ClassInitializationFeature.java:227)
        at com.oracle.svm.hosted.NativeImageGenerator.lambda$runPointsToAnalysis$8(NativeImageGenerator.java:732)
        at com.oracle.svm.hosted.FeatureHandler.forEachFeature(FeatureHandler.java:70)
        at com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:732)
        at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:555)
        at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:468)
        at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:163)
Error: Image build request failed with exit status 1

I tried using --initialize-at-build-time=com.sun.jmx.remote.internal.IIOPHelper and --initialize-at-**run**-time=com.sun.jmx.remote.internal.IIOPHelper but that is not helping

You can see what is 'dragging that in' by adding the option -H:+TraceClassInitialization - this should show you what is pulling it into buildtime initialization.   If you pushed it buildtime yourself, with that --initialize-at-build-time=com.sun.jmx.remote.internal.IIOPHelper then I would have expected a slightly diff error (as that type may pull on another).  Things you can try:

init the whole package at build time: --initialize-at-build-time=com.sun.jmx.remote.internal
look at trace class initialization output for this and see where if there is a type you can force to explicit runtime initialization that will then not cause IIOPHelper to be initialized early.

Thank you @aclement . I tried --initialize-at-build-time=com.sun.jmx.remote.internal but that did not help but this one helped --initialize-at-build-time=com.sun.jmx.remote. That allowed me to create build :-) heyyyyyyyyy!!!!!!!!!. Thank you so much for your so many inputs. You are really awesome !!!
Now, while running the image I got this
[2020-08-12 17:08:20.226-0500] [APP] ERROR 10904 --- [main] o.s.boot.SpringApplication               : Application run failed

java.lang.IllegalStateException: Logback configuration error detected:
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to parse condition [property("LOG_PROP_EXIST").equals("true")] org.codehaus.commons.compiler.InternalCompilerException: SNO: Generated compilation unit does not declare class 'SC'
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to determine "if then else" result
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to parse condition [isDefined("spring.profiles.active") && property("spring.profiles.active").contains("disconnected")] org.codehaus.commons.compiler.InternalCompilerException: SNO: Generated compilation unit does not declare class 'SC'
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to determine "if then else" result
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:169)
        at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithConventions(AbstractLoggingSystem.java:80)
        at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:60)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:118)
        at org.springframework.boot.context.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:306)
        at org.springframework.boot.context.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:281)
        at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:239)
        at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:216)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
        at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:80)
        at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
        at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
        at com.App.main(Main.java:23)

Exception in thread "main" java.lang.IllegalStateException: Logback configuration error detected:
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to parse condition [property("LOG_PROP_EXIST").equals("true")] org.codehaus.commons.compiler.InternalCompilerException: SNO: Generated compilation unit does not declare class 'SC'
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to determine "if then else" result
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to parse condition [isDefined("spring.profiles.active") && property("spring.profiles.active").contains("disconnected")] org.codehaus.commons.compiler.InternalCompilerException: SNO: Generated compilation unit does not declare class 'SC'
ERROR in ch.qos.logback.core.joran.conditional.IfAction - Failed to determine "if then else" result
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:169)
        at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithConventions(AbstractLoggingSystem.java:80)
        at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:60)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:118)
        at org.springframework.boot.context.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:306)
        at org.springframework.boot.context.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:281)
        at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:239)
        at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:216)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
        at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:80)
        at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
        at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
        at com.App.main(Main.java:23)

Here is the snippet of logback-spring.xml present in the project. I will look into this issue tomorrow.

I admire your persistence with this :) Glad you made some progress. I guess you are using the agent to collect config in addition to running the feature in default mode, hmm. We don't have any samples that use logback-spring.xml right now so I can't say for certain what the problem is. Can you temporarily simplify the logback-spring.xml just to see if that gets you beyond this problem? This kind of message 'Generated compilation unit' makes me worry it is generating code at runtime and that will never work, but I'm not 100% sure if that is what it is doing.

yes, I am using agent in addition to spring feature. Because spring feature alone did not work with spring boot 2.3.1 and spring-graal-native 0.7.1. I commented out if condition from logback and that allowed to get rid of the Failed to parse condition [property("LOG_PROP_EXIST").equals("true")] . so it looks like something it did not like about that in if condition. I need to look into this further. Now I am getting CXF related error. SOAP calls are heavily implemented using CXF in my project. I tried running one of the simple cxf call when agent was running and thought that would give enough information for bean initialization. But that did not help.
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.ExceptionInInitializerError
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:417)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:338)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:224)
        at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:195)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.lambda$loadBeanDefinitionsFromImportedResources$0(ConfigurationClassBeanDefinitionReader.java:378)
        at java.util.LinkedHashMap.forEach(LinkedHashMap.java:684)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromImportedResources(ConfigurationClassBeanDefinitionReader.java:345)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:147)
        at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:120)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:331)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:236)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:280)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:96)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:707)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:533)
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
        at com.vue.labs.LocalAbeServiceApplication.main(LocalAbeServiceApplication.java:23)
Caused by: java.lang.ExceptionInInitializerError: null
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:291)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.lang.Class.newInstance(DynamicHub.java:855)
        at org.apache.xerces.impl.dv.ObjectFactory.newInstance(Unknown Source)
        at org.apache.xerces.impl.dv.SchemaDVFactory.getInstance(Unknown Source)
        at org.apache.xerces.impl.dv.SchemaDVFactory.getInstance(Unknown Source)
        at org.apache.xerces.impl.xs.SchemaGrammar$BuiltinSchemaGrammar.<init>(Unknown Source)
        at org.apache.xerces.impl.xs.SchemaGrammar.<clinit>(Unknown Source)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:351)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:271)
        at org.apache.xerces.impl.xs.XMLSchemaValidator.<clinit>(Unknown Source)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:351)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:271)
        at org.apache.xerces.parsers.XML11Configuration.configurePipeline(Unknown Source)
        at org.apache.xerces.parsers.XIncludeAwareParserConfiguration.configurePipeline(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
        at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:77)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:432)
        at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
        ... 24 common frames omitted
Caused by: java.lang.RuntimeException: internal error
        at org.apache.xerces.impl.dv.xs.XSSimpleTypeDecl.applyFacets1(Unknown Source)
        at org.apache.xerces.impl.dv.xs.BaseSchemaDVFactory.createBuiltInTypes(Unknown Source)
        at org.apache.xerces.impl.dv.xs.SchemaDVFactoryImpl.createBuiltInTypes(Unknown Source)
        at org.apache.xerces.impl.dv.xs.SchemaDVFactoryImpl.<clinit>(Unknown Source)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:351)
        at com.oracle.svm.core.classinitialization.ClassInitializationInfo.initialize(ClassInitializationInfo.java:271)
        ... 46 common frames omitted

Looking at XSSimpleTypeDecl (the originating area of the problem):
        try {
            applyFacets(facets, presentFacet, fixedFacet, SPECIAL_PATTERN_NONE, fDummyContext);
        } catch (InvalidDatatypeFacetException e) {
            // should never gets here, internel error
            throw new RuntimeException("internal error");
        }

And that is the runtime exception that comes out, helpfully sigh it throws away the InvalidDatatypeFacetException and doesn't tell us what actually went wrong.  So let's a bit further up the stack to the clinit for SchemaDVFactoryImpl which seems to drive initializing some built in types (I picked that clinit because we are seeing an ExceptionInInitializer problem).
    static {
        createBuiltInTypes();
    }

    static void createBuiltInTypes() {
        createBuiltInTypes(fBuiltInTypes, XSSimpleTypeDecl.fAnySimpleType);
    }

createBuiltInTypes would seem to end up in applyFacets1 many times.
Maybe to diagnose it further we'd slap a substitution onto that XSSimpleTypeDecl.applyFacets1() such that it either prints out the stack trace for the exception it hits or includes it with the exception it throws.
Re: the condition problem. I can well imagine in parsing the condition the infra might try to create a class on the fly that embodies it for subsequent faster evaluation and you can't do that class gen in a native image.

@aclement Hope you can help me here. I was able to generate native image(but still I am not able to run it due to above issue that I am still trying to get more logs) but over the weekend I restarted my machine and I am trying to run the native-image command with locally build graalvm and getting this error
Warning: Ignoring server-mode native-image argument --no-server.
 All i did was rebooted my system and that was gone. But now its happening and even after many restarts still I am getting this error.
This is what I see when i check the version. I dont exactly remember I was getting GraalVM Version 20.1.1-dev for native-image --version earlier when it was working last week but not sure if that is the root cause of this problem.

my environment variables

Hmm, the only time I've seen things like that is when my build script was missing continuation backslashes \ so it wasn't sending the whole command through properly.  Does it behave for very simple things like a HelloWorld - just create a simple .java file, and try to create a native-image for it? I'd try that.   Is the classpath being constructed correctly with the right ';' path separators for windows?

@aclement looks like that was the cause. I added " around the classpath that set CP="%CP%;%GRAAL_AGENT_PATH%"; looks like that is taking care of it. Spend almost half a day trying to figure it out and reached out to you :-) .
Then I started receiving the same NPE that I was getting earlier while during image creation. I was so frustrated and tried to create graalvm build again and I got some connection refused error. So I gave and looked into grallvm ce build looks like there is one created on 80/15 so I started using that(I believe the NPE fix is added into 08/15 build and its no longer happening to me). By the way looks like I added graalvm as project dependency into build.gradle file and that was causing com.oracle.svm.core.util.UserError$UserException: Already registered: java.lang.management.ManagementFactory.getPlatformMBeanServer(). Its no longer happening now and I am able to use 20.3 dev build. Now I am back to the java.lang.RuntimeException: internal error. I will get back to you on that.

@aclement I am trying to run the substitute method as per your advise and trying to get more information for the error ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.ExceptionInInitializerError . I added the attached substitute class and I see that it was used during compilation because I see warnings like C:\dev\apps\src\main\java\com\sun\org\apache\xerces\internal\impl\dv\xs\Target_Apache_XSSimpleTypeDecl.java:5: warning: ValidationContext is internal proprietary API and may be removed in a future release import com.sun.org.apache.xerces.internal.impl.dv.ValidationContext;                                                  ^ . So i created native image using 23.0-dev and when I run the created image I do not see that any sout or serr that I put in the substitute class or I modified runtime exception to throw new RuntimeException("internal error from substitute"+e); but looks like that is not getting executed either. Looks like the original XSSimpleTypeDecl.applyFacets1() only gets executed not my substitute method. Could you please review my substitute class and advise me why it is never used? also could you please advise me how to get something printed from substitute class. Is sout would work? Thanks again for all your help. I really appreciated. I could not imagine what I could
Target_Apache_XSSimpleTypeDecl.zip
have done without your help :-)

I imagine sysout println will work from substitution method bodies. What I'm not sure about is the state you have in that substitution - is that allowed? Because the marked parts of it are meant to replace the bits in the target. I've not written one had its own instance state in addition. (But we might have one, I didn't write them all in our substitutions sub module - see if there are any that do that). Is all this trouble because of the XML being used to configure logback? Is there other XML? Can we test things out without that extraneous logging config, or capture it in another way (properties?). Might be easier than fighting with xerces.

@aclement I got a breakthrough for CXF issue. I could not able to reproduce the issue in sample project so I continued to work on the actual project. The project spring config java file entry like this @ImportResource("classpath:META-INF/cxf/cxf.xml"). I commented that out and added @Bean(name= Bus.DEFAULT_BUS_ID)     public Bus bus() {         return new SpringBus();     } from one of the example from internet and I am not seeing Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.ExceptionInInitializerError which is a good news to me.
Now I am seeing following error
[main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanDefinitionStoreException: @Configuration classes need to be marked as proxyBeanMethods=false. Found: [org.springframework.scheduling.annotation.ProxyAsyncConfiguration, springfox.documentation.schema.configuration.ModelsConfiguration, springfox.documentation.spring.web.SpringfoxWebMvcConfiguration, springfox.documentation.swagger.configuration.SwaggerCommonConfiguration, springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration]
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:71)
        at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanFactory(ConfigurationClassPostProcessor.java:257)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:291)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:131)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:707)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:533)
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)

Please advice what should I do for the above configurations since they are not in my code and how to deal with them?
PS: I still need to figure out a way to use if conditions in logback but I plan to work on that in future. Thanks for your help again.

That message is actually a reasonable one for once :)
In order to avoid CGLIB proxies for configuration classes they have to mark themselves with proxyBeanMethods=false in their Configuration annotation. If you look throughout Spring, we have switched to this model where we can. The first one is interesting as that is us: ProxyAsyncConfiguration - however since that one itself is related to proxies I wonder if it being around at all is a bad sign. Are you using @EnableAsync somewhere - do you need to for this experiment? (It might be in a dependent library I guess). We don't have a test sample for this.
For the others, in springfox, the recommended solution would be to get them to switch to proxyBeanMethods=false to achieve native-image compatibility. If you cloned that project and did a local build of it into your maven repo you could test out making those changes locally.
 That @ImportResource pointing to an xml doc is interesting.

@aclement I noticed this warning WARNING: Could not register reflection metadata for net.sf.ehcache.transaction.manager.DefaultTransactionManagerLookup. Reason: java.lang.NoClassDefFoundError: javax/transaction/TransactionManager. during image build after trying so many things and that gave me some clue. For some reason the DefaultTransactionManagerLookup was looking for TransactionManager, but it was not required when it ran in spring boot mode.  So I added this dependency implementation group: 'javax.transaction', name: 'jta', version: '1.1' and no longer getting the Type net.sf.ehcache.transaction.manager.DefaultTransactionManagerLookupcan not be instantiated reflectively as it does not have a no-parameter constructor or the no-parameter constructor has not been added explicitly to the native image. error.
I ignored all the warning earlier and that cost me couple of days for this error. So I am revisiting all the warnings now. Should I worry about them now?
Feature operating in FEATURE mode
Removing unused configurations
Verification turned on
Removing Yaml support
Removing JMX support
Use -Dspring.native.verbose=true on native-image call to see more detailed information from the feature
[agent:18076]        (cap):   6,348.53 ms,  2.54 GB
WARNING: Could not resolve com.ours.schema.AdminRequestType_JaxbXducedAccessor_RegId for reflection configuration.
So many similar warnings
.
.
.
.
Found #6 types in static reflection list to register
Skipping #6 types not on the classpath
.
.
.
Looks like component scan happening
vvv
...
^^^
Number of types dynamically registered for reflective access: #4483
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration. Reason: java.lang.NoClassDefFoundError: com/google/gson/GsonBuilder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jsonb.JsonbAutoConfiguration. Reason: java.lang.NoClassDefFoundError: javax/json/bind/Jsonb.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.JndiJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.BitronixJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.http.ReactiveHttpInputMessage. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Flux.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.AtomikosJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/authentication/DefaultAuthenticationEventPublisher.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/crypto/password/PasswordEncoder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer. Reason: java.lang.NoClassDefFoundError: org/springframework/jdbc/CannotGetJdbcConnectionException.
WARNING: Could not register reflection metadata for org.springframework.web.multipart.commons.CommonsMultipartResolver. Reason: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory.
WARNING: Could not register reflection metadata for org.springframework.http.server.reactive.HttpHandler. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Mono.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration. Reason: java.lang.NoClassDefFoundError: com/google/gson/GsonBuilder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jsonb.JsonbAutoConfiguration. Reason: java.lang.NoClassDefFoundError: javax/json/bind/Jsonb.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.JndiJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.BitronixJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.http.ReactiveHttpInputMessage. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Flux.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.AtomikosJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/authentication/DefaultAuthenticationEventPublisher.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/crypto/password/PasswordEncoder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer. Reason: java.lang.NoClassDefFoundError: org/springframework/jdbc/CannotGetJdbcConnectionException.
WARNING: Could not register reflection metadata for org.springframework.web.multipart.commons.CommonsMultipartResolver. Reason: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory.
WARNING: Could not register reflection metadata for org.springframework.http.server.reactive.HttpHandler. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Mono.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration. Reason: java.lang.NoClassDefFoundError: com/google/gson/GsonBuilder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jsonb.JsonbAutoConfiguration. Reason: java.lang.NoClassDefFoundError: javax/json/bind/Jsonb.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.JndiJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.BitronixJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.http.ReactiveHttpInputMessage. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Flux.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.AtomikosJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/authentication/DefaultAuthenticationEventPublisher.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/crypto/password/PasswordEncoder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer. Reason: java.lang.NoClassDefFoundError: org/springframework/jdbc/CannotGetJdbcConnectionException.
WARNING: Could not register reflection metadata for org.springframework.web.multipart.commons.CommonsMultipartResolver. Reason: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory.
WARNING: Could not register reflection metadata for org.springframework.http.server.reactive.HttpHandler. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Mono.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration. Reason: java.lang.NoClassDefFoundError: com/google/gson/GsonBuilder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jsonb.JsonbAutoConfiguration. Reason: java.lang.NoClassDefFoundError: javax/json/bind/Jsonb.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.JndiJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.BitronixJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.http.ReactiveHttpInputMessage. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Flux.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.AtomikosJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/authentication/DefaultAuthenticationEventPublisher.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/crypto/password/PasswordEncoder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer. Reason: java.lang.NoClassDefFoundError: org/springframework/jdbc/CannotGetJdbcConnectionException.
WARNING: Could not register reflection metadata for org.springframework.web.multipart.commons.CommonsMultipartResolver. Reason: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory.
WARNING: Could not register reflection metadata for org.springframework.http.server.reactive.HttpHandler. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Mono.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration. Reason: java.lang.NoClassDefFoundError: com/google/gson/GsonBuilder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jsonb.JsonbAutoConfiguration. Reason: java.lang.NoClassDefFoundError: javax/json/bind/Jsonb.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.JndiJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.BitronixJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.http.ReactiveHttpInputMessage. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Flux.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.transaction.jta.AtomikosJtaConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/authentication/DefaultAuthenticationEventPublisher.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/crypto/password/PasswordEncoder.
WARNING: Could not register reflection metadata for org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer. Reason: java.lang.NoClassDefFoundError: org/springframework/jdbc/CannotGetJdbcConnectionException.
WARNING: Could not register reflection metadata for org.springframework.web.multipart.commons.CommonsMultipartResolver. Reason: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory.
WARNING: Could not register reflection metadata for org.springframework.http.server.reactive.HttpHandler. Reason: java.lang.NoClassDefFoundError: reactor/core/publisher/Mono.
[agent:18076]     (clinit):   3,611.85 ms,  6.42 GB
[agent:18076]   (typeflow): 119,419.84 ms,  6.42 GB
[agent:18076]    (objects): 135,723.92 ms,  6.42 GB
[agent:18076]   (features): 202,749.60 ms,  6.42 GB
[agent:18076]     analysis: 467,970.46 ms,  6.42 GB
[agent:18076]     universe:   7,274.47 ms,  6.42 GB
[agent:18076]      (parse):  26,162.69 ms,  5.86 GB
[agent:18076]     (inline):  65,920.22 ms,  8.74 GB
[agent:18076]    (compile):  89,769.72 ms,  9.28 GB
[agent:18076]      compile: 193,019.54 ms,  9.28 GB
[agent:18076]        image:  17,082.74 ms,  9.46 GB
[agent:18076]        write:   8,524.33 ms,  8.73 GB
[agent:18076]      [total]: 791,416.18 ms,  8.73 GB

Now getting Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.commons.http.ssl.KeystoreConfig' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations<EMAIL_ADDRESS>when running native image. But I see that  KeystoreConfig is present in reflect-config.json and resource-config.json.
reflect-config.json
{
  "name":"com.commons.http.ssl.KeystoreConfig",
  "allDeclaredMethods":true,
  "allPublicMethods":true
},
{
  "name":"com.commons.http.ssl.KeystoreConfigImpl",
  "allDeclaredFields":true,
  "allDeclaredMethods":true,
  "allDeclaredConstructors":true
}

resource-config.json
{"pattern":"\\Qcom/commons/http/ssl/KeystoreConfig.class\\E"},
    {"pattern":"\\Qcom/commons/http/ssl/KeystoreConfigImpl.class\\E"},

@sendev1 Could you please test and provide an up to date repro with our 0.8.2 milestone I will release today?

Closing this one for lack of feedback.


Match error when activating log adapters with enable()

Firstly - thanks for all your contributions! 👍
Here's my issue; when initialising a new log adapter, like this:
new LoggerConsole(log, myOptions).enable({
    server: true,
    filter: ['*']
});

I get the following error:
 Exception while invoking method '1_logger_emit_Console' Error: Match error: Failed Match.OneOf, Match.Maybe or Match.Optional validation
I20180226-10:55:39.779(11)?     at check (packages/check/match.js:35:15)
I20180226-10:55:39.779(11)?     at MethodInvocation.method.(anonymous function) (packages/ostrio:logger/logger.js:175:9)
I20180226-10:55:39.779(11)?     at packages/check/match.js:108:16
I20180226-10:55:39.779(11)?     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1186:15)
I20180226-10:55:39.779(11)?     at Object._failIfArgumentsAreNotAllChecked (packages/check/match.js:107:41)
I20180226-10:55:39.779(11)?     at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1765:18)
I20180226-10:55:39.779(11)?     at DDP._CurrentMethodInvocation.withValue (packages/ddp-server/livedata_server.js:719:19)
I20180226-10:55:39.779(11)?     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1186:15)
I20180226-10:55:39.780(11)?     at DDPServer._CurrentWriteFence.withValue (packages/ddp-server/livedata_server.js:717:46)
I20180226-10:55:39.784(11)?     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1186:15)
I20180226-10:55:39.785(11)?     at Promise (packages/ddp-server/livedata_server.js:715:46)
I20180226-10:55:39.785(11)?     at new Promise (<anonymous>)
I20180226-10:55:39.785(11)?     at Session.method (packages/ddp-server/livedata_server.js:689:23)
I20180226-10:55:39.785(11)?     at packages/ddp-server/livedata_server.js:559:43
I20180226-10:55:39.785(11)? Sanitized and reported to the client as: Match failed [400]

Looking closer at packages/ostrio:logger/logger.js:175:9, I notice that the enable param is not matched/optional?
So; if I change my init to include enable, this works:
new LoggerConsole(log, myOptions).enable({
    enable: true,
    server: true,
    filter: ['*']
});

Perhaps this is by design. If so, might be nice to have this mentioned in the docs.
Otherwise, perhaps we just need to change the check to something like:
check(options, {
      enable: Match.Optional(Boolean), // logger.js:171
      client: Match.Optional(Boolean),
      server: Match.Optional(Boolean),
      filter: Match.Optional([String])
    });

FYI my setup:

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Meteor 1.6.1

Hmm looking closer, the enable property is not related to the issue.
Oddly, it seems that if the client boolean does not equal server value (e.g. { client: true, server: false }) , I do not get the above error...
And, if both set to true, the Logger does actually initialise and logs a few lines of output successfully  before throwing the error.
I will dig a bit deeper.
Thanks.

@danwild not sure where you've got confused.
Take a look at our test cases - https://github.com/VeliovGroup/Meteor-logger/blob/master/logger-tests.js
Hopefully you could get there some inspiration :)


Free detailed course on object-oriented programming

It is a free detailed course on object-oriented programming on youtube by Kunal Kushwaha
What does this PR do?
Add resource(s) | Remove resource(s) | Add info | Improve repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Read our contributing guidelines
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[] Put lists in alphabetical order, correct spacing.
[ ] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Duplicate of #6661


1.3 Optimize Hash Join to reduce memory usage.

Subtask of https://github.com/opensearch-project/sql/issues/2913

Duplicates https://github.com/opensearch-project/sql/issues/2922


Showing "0" value on the yAxis even if it is not in the chart data

There is any way to display a zero value in a multiChart even if the data doesn't contain such a value?
(In other words - to have the multiChart always start from 0 to a number of our choosing on the yAxis, no matter of what the chart data is).
(yDomain and yRange did not held any result).
Here is an example of the data on a multiChart on plnkr:
http://plnkr.co/edit/i16k6FCZWBpqdSXE8hPQ?p=preview

With Krispo help, This is the way to do this:
chart: {
type: 'multiChart',
...,
yDomain1: [0, 1000000]
}


restic: 0.9.4 -> 0.9.5

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on Nix community. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/12

Could you also backport it to 19.03? It fixes a problem with restore i currently have (https://github.com/restic/restic/commit/bf9a50714881cfa421ec3aff05df39cf20126ca9).

@davidak done


Add configItem to allow app download over LTE

To be able to test complete network failover from a free to a non-free management interface we need to have a way to perform fallback app image download over the non-free interface.
(We can already use LTE by marking it as free=true, but that doesn't allow us to test the failover.)
Note that later we will need a way to adjust the policy and priority for management port usable with more flexibility. That is outlined in https://wiki.lfedge.org/display/EVE/ECO+connectivity+failover+and+improved+policy+control
It will presumably include new device APIs etc.
So this is a short-term removal of the hard-coded policy we have today for handling free vs. non-free.

LGTM. Makes sense as a stopgap


Fix RPM build

Describe what this PR does and why we need it:
The operator refactoring moved some paths around (apb -> ansible_role) and that seems to have broken copr.
Changes proposed in this pull request

Fix paths in .spec file

Coverage remained the same at 41.003% when pulling 9fdb56ab4a9e8b5ed8d68254144c1499ac81986d on eriknelson:fix-build into 6cffff34c3658d25979b170cd53c0fe8371d5c01 on openshift:master.


Curriculum update needed on project_hash_map.md

The Odin's file, project_hash_map.md is updated. Please update the Kampus' file, checkout file here project_hash_map.md
Latest commits:

Fix typo in Step 1 (additions: 1, deletions: 1) on Mar 28 2024, 17:27 UTC

New commits have been made to the Odin's file. Please update the Kampus' file.
Latest commits:

Add option for factory function for HashSet (#27944) (additions: 1, deletions: 1) on May 7 2024, 17:24 UTC


Merge ign-msgs4 to ign-msgs5

This is the same as #53, but since this one has conflicts and that one is up to date, I'll merge that one and decline this one.


Add recommended hetzner firewall documentation

My personal experience as a comment here. There are two options for the firewall. 1) Hetzner offers GUI for managing firewall in front of your server, 2) use firewalld on your server, if it's CentOS/RHEL/etc.
I personally block ports I never want open (RPC bind + portmapper) in Hetzner firewall just in case, and leave anything else open. Then I do  set more fine grained rules on the Linux itself. E.g. all kinds of port mappings to VMs etc.
Just to say, I find it good to have it in two layers like that. So if you don't do anything weird in your linux, you don't even need to block anything there, just forward the service ports for VMs. Result is that you have only ssh open hopefully in some high port on host, and things like OCP API 6443 & 80 & 443 being forwarded to OCP VMs.. I also run tower, and some VM direct ssh port openings on the host on high ports, and find this as a good setup for me.

Fixed in devel branch, will be merged into master via PR #159


Litmus-Docs links from Google Search Results redirecting to old broken links

BUG REPORT

What happened:
Google search for Litmus Version 1 docs lead to pages that gives a status code of 404.
The issue is caused due to the change in the URL of the Litmus v1 documentation.
Google Search Result: https://docs.litmuschaos.io/docs/1.7.0/openshift-litmus/ (404 error)
Corrected Link found on browsing the Docs: https://v1-docs.litmuschaos.io/docs/1.7.0/openshift-litmus/ (Working)
What you expected to happen:
There should be a redirection from the older URL to the newer URL.
How to reproduce it (as minimally and precisely as possible):

Perform a Google Search: litmus chaos openshift
Selecting the First Search Result

Hey, where to modify this?
I would like to contribute.

Hi @mehabhalodiya @Lucifergene , This issue has been resolved now. You may find one link from netlify that will also be reindexed & removed by google in sometime. Closing this issue for now, feel free to open it again if issues persists. Thankyou!


Cloud block shows mining progress but is indestructable

The reason why it doesn't destruct is this in src/item.c:
bool is_destructable(int w) {
    switch (w) {
        case EMPTY:
        case CLOUD:
            return false;
        default:
            return true;
    }
}

Remove is_destructable now that there is the hardness property, and it can return INFINITY?


Feature Request:  add command-line options (and HB inputs) to the log output

Hi Don,
Just looking through 150+ transcodes from the last month from the bash scripts/new Ruby ones and would appreciate if you could include the command (and options) as typed in the resultant output log. It would be really useful to see what was run instead of reconstructing it from the HB summary.
Also, could the --dry-run output be included too? Both of these are really useful post-transcoding especially for those of us who retain the logs and historically look back to see what was run.
Thanks again for all the hard work and for sharing these with us.
Joe

Joe,
Thanks for the feedback!
No, I don't want to add transcode-video-specific content to the .log files. That's because they're not actually logs of what transcode-video is doing. They're HandBrake logs. And I don't want to make them different from any other logs generated by HandBrake or HandBrakeCLI. I considered the approach you suggest when I started the project, but quickly realized doing so would make it difficult for other tools to compare and parse the log files.
A better solution to your problem, since it seems you want both the command as typed and the command as parsed, is to save them during batch processing. It's fairly simple to take the "Batch control for transcode-video example script and modify it to do this.
Other than the commands, much of the information you're interested in can be mined from the .log files as is. And I'll consider that as a future feature for the query-handbrake-log tool.
I'll close this for now, but feel free to continuing comment here especially if you have questions about modifying the batch processing script.

Hi Don,
Thanks for the reply - your comments about just having HandBrake output makes a lot of sense especially for parsing afterwards. I think the main reason I suggested it was to look back historically to see settings used or commands run. All of which can be deduced anyway from the output. The batch addition works and I had already started including something similar over the weekend.
Thanks again for the work and for giving me a new hobby (re-transcoding and spotting-searching for further improvements) :-)

Joe,
I'm glad the batch file trick is working for you. I may actually modify the sample script in the "README" file to include something like that.
And you are very welcome for that new hobby. Just be careful it doesn't become an obsession. :)


Add provide and inject support, docs and tests

Improve the quality of the code

fixed some internals (shallowRef instead of ref)
added support for provide and inject
added working vitest tests
added a vanilla vue 3 example for manual testing
update readme with rational, examples and claims to fame

Thanks for this!


dynamic query parameters support

Hi @bradenhs,
What is for you the best approach to describe query parameters that can't be known in advance.
For example I would like to have an url like that:
https://datalab.sspcloud.fr/launcher/datascience/tensorflow?gpu=2&cpu=0.2
but gpu and cpu is not something that I can declare in the types.
For now what I do is:

But my url look like that witch is not ideal...
http://datalab.sspcloud.fr/launcher/datascience/tensorflow?p=gpu%3D2%2Ccpu%3D0.2

Unfortunately there isn't a great way to make the names of query params dynamic. It is possible though. See: https://typehero.org/type-route/docs/guides/custom-query-string. The last half of that section describes how you could write your own query string parser with custom behavior. But if that's not absolutely necessary I'd recommend sticking with the simpler work around you're using now. Depending on what kind of values end up in the "p" parameter you might be able to disable url escaping for that section which could make the url more human readable.

Thanks for your reply!
Pretty URL is too much of a selling point for our app, we can't settle on that.
I ended up using a combination of ValueSerializer and QueryStringSerializer, I hope future maintainers won't be too mystified by the solution (here and here).
What bothers me the most is that my solution breaks the separation of concern. The QueryStringSerializer being global I have no way of knowing for which page I am serialising/parsin queries parameters so I am doing some unsafe assertion on the keys.
Also I was a bit frustrated by the fact that here you check the existence of the propertiy by doing if( !(paramKey  in routeDef["~internal"].params) ) instead of if( routeDef["~internal"].params[paramKey] === undefined ), it pvevented me from implementing a solution using Proxy 😞
Anyway, still a fan and strong supporter of type route. 👍🏻
Best regards

Thanks for bringing up another use case here. Perhaps one day I'll come up with a better solution for this type of scenario.

Also I believe this could help you out if you want to use Proxy with in: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/has

Also I believe this could help you out if you want to use Proxy with in: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/has

Wonderfull, I didn't know about that! I wish I knew it before.


hostfxr.dll round #2

So I was unable to reopen the original ticket, so here's another one:
Failed to load the dll from [C:\Users\Jonathan\Desktop\AsaCli-win-2.0.150\res\hostfxr.dll], HRESU
LT: 0x80070057
The library hostfxr.dll was found, but loading it from C:\Users\Jonathan\Desktop\AsaCli-win-2.0.1
50\res\hostfxr.dll failed
  - Installing .NET Core prerequisites might help resolve this problem.
     https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409

I'd already followed the link and installed all the dependencies....hence my opening this ticket.  Any suggestions?

Sorry. I don't have any additional advice. The documentation calls out two KBs you have to install to resolve this error. In my experience I hit this issue and installing those two KBs resolved it.

I see.


Differentiated uses for alt/cltr/shift

It would be a good idea, and very useful, to separate the functions of the shift, control and alt keys, for example:

Pressing Shift could make the roll with advantage (Rolled Eldritch Blast (ADV).
Pressing Control could be done with disadvantage (Rolled Eldritch Blast (DIS).
Pressing Alt could roll basic critical damage, doubling the die to roll, but adding only once the bonus (Rolled Eldritch Blast (CRIT).
This would be enhanced if the text could be modified in some way, for example, by darkening the result that will not be taken into account (the lowest or highest, depending on whether the roll is made with advantage or disadvantage), thus highlighting the white text more as the result to be taken, or making only the result that corresponds be shown on the screen.

This image is a simple photoshop retouching.

Yes, adding options to let people control these a bit more is something I want to do.
TaleSpire doesn't really let us do much more than sending label and dice to it, so we currently can't tell it to highlight the lower/higher.

I've pushed an update where you can behavior a bit for the modifier keys. It just let's you change the text within the paranthesis to ADV, DIS and ADV/DIS, but it makes your intention a bit clearer to other players at least.
TaleSpire has also said they're looking into a new more powerful dice syntax, so the other items might be possible in the future. :smile:


Disallow installation unless SSL is configured properly with browser-valid certificate

Do not allow the installation wizard in mod/setup.php to proceed via HTTP.
Test SSL first via curl, re-using code already in setup.php, report error if it's not configured, stop installation.
Transparently and/or manually redirect to HTTPS url if the SSL passes the test.
Allow a manual flag in .htconfig.php or similar for testing and development purposes, to disable this test when needed.

Just a note that any solution requires the ability to run test servers without certs. The definition of a test server and how this is accomplished specifically is undefined. .htconfig.php doesn't actually exist and is not read when setup is invoked so another solution may be required, possibly the existence or lack thereof of a special file.

@redmatrix a easy solution for no start nothing not have SSL
Add to .htaccess
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
That will force to continue in https


how to use this awesome lib with angular

i am really finding difficulty adding this lib to angular can you please show us how ?!

http://jsfiddle.net/bewithjonam/p4cuswb5/

Hi, the example works with AngularJS (AKA angular 1)
It doesn't work in Angular 2 to 7

Hi, is there any example available now for angular latest version?


cannot build on mac m1 with docker desktop

Hi, I am trying to build the image using docker build . on mac m1 and run into many issues.
Hope you can help and thank you so much!
first ModuleNotFoundError: No module named 'torch'
=> ERROR [ 7/21] RUN pip install --pre xformers                                                                                3.4s
------
 > [ 7/21] RUN pip install --pre xformers:
#10 0.397 Defaulting to user installation because normal site-packages is not writeable
#10 0.763 Collecting xformers
#10 1.054   Downloading xformers-0.0.17.dev466.tar.gz (7.4 MB)
#10 2.312      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.4/7.4 MB 5.9 MB/s eta 0:00:00
#10 2.879   Preparing metadata (setup.py): started
#10 2.988   Preparing metadata (setup.py): finished with status 'error'
#10 2.990   error: subprocess-exited-with-error
#10 2.990
#10 2.990   × python setup.py egg_info did not run successfully.
#10 2.990   │ exit code: 1
#10 2.990   ╰─> [6 lines of output]
#10 2.990       Traceback (most recent call last):
#10 2.990         File "<string>", line 2, in <module>
#10 2.990         File "<pip-setuptools-caller>", line 34, in <module>
#10 2.990         File "/tmp/pip-install-fxjxehjn/xformers_e15ca0b2eef3427fad5cc55bdcca5e7f/setup.py", line 23, in <module>
#10 2.990           import torch
#10 2.990       ModuleNotFoundError: No module named 'torch'
#10 2.990       [end of output]
#10 2.990
#10 2.990   note: This error originates from a subprocess, and is likely not a problem with pip.
#10 2.991 error: metadata-generation-failed
#10 2.991
#10 2.991 × Encountered error while generating package metadata.
#10 2.991 ╰─> See above for output.
#10 2.991
#10 2.991 note: This is an issue with the package mentioned above, not pip.
#10 2.991 hint: See above for details.
------

fixed by adding:
RUN pip3 install --upgrade pip
RUN pip install torch
RUN pip install --pre xformers

then ERROR: No matching distribution found for triton I don't know what to do.
docker build .
[+] Building 2.3s (15/28)
 => [internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 2.65kB                                                                                0.0s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load metadata for docker.io/nvidia/cuda:11.7.1-base-ubuntu22.04                                                             1.3s
 => [auth] nvidia/cuda:pull token for registry-1.docker.io                                                                                0.0s
 => CANCELED https://huggingface.co/ckpt/anything-v4.5-vae-swapped/resolve/main/anything-v4.5-vae-swapped.safetensors                      0.9s
 => [ 1/22] FROM docker.io/nvidia/cuda:11.7.1-base-ubuntu22.04@sha256:ab51a8d50a8c7d5f0c61b4a3eaeaa72b99aa60c2235c8c1a8c87410d9172aba5     0.0s
 => CACHED https://raw.githubusercontent.com/camenduru/stable-diffusion-webui-scripts/main/run_n_times.py                                  0.0s
 => CACHED [ 2/22] RUN apt-get update -y && apt-get upgrade -y && apt-get install -y libgl1 libglib2.0-0 wget git git-lfs python3-pip pyt  0.0s
 => CACHED [ 3/22] RUN adduser --disabled-password --gecos '' user                                                                         0.0s
 => CACHED [ 4/22] RUN mkdir /content && chown -R user:user /content                                                                       0.0s
 => CACHED [ 5/22] WORKDIR /content                                                                                0.0s
 => CACHED [ 6/22] RUN pip3 install --upgrade pip                                                                                0.0s
 => CACHED [ 7/22] RUN pip install torch                                                                                0.0s
 => CACHED [ 8/22] RUN pip install --pre xformers                                                                                0.0s
 => ERROR [ 9/22] RUN pip install --pre triton                                                                                0.9s
------
 > [ 9/22] RUN pip install --pre triton:
#13 0.406 Defaulting to user installation because normal site-packages is not writeable
#13 0.844 ERROR: Could not find a version that satisfies the requirement triton (from versions: none)
#13 0.844 ERROR: No matching distribution found for triton

https://pypi.org/project/triton/

Hi @harrywang 👋 please delete
RUN pip install --pre xformers
RUN pip install --pre triton

and  --xformers
and try again
also check
https://github.com/apple/ml-stable-diffusion
https://github.com/godly-devotion/MochiDiffusion
https://huggingface.co/coreml