certificate-ripper
graalvm-reachability-metadata
certificate-ripper | graalvm-reachability-metadata | |
---|---|---|
17 | 8 | |
667 | 327 | |
- | 2.1% | |
7.2 | 8.6 | |
2 months ago | 5 days ago | |
Java | Java | |
Apache License 2.0 | Creative Commons Zero v1.0 Universal |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
certificate-ripper
-
Certificate Ripper v2.2.0 released - tool to extract server certificates
Link: https://github.com/Hakky54/certificate-ripper/releases
-
GraalVM Native Image — Faster, Smarter, Leaner
This is a very detailed video, thanks for sharing it! If anyone is looking for a small example java project creating native images please have a look at one of my repo here: GitHub - Certificate Ripper
-
Certificate Ripper v2 released - tool to extract server certificates
It is an easy to use cli tool to extract the full chain of any server/website. The end user can inspect any sub fields and details easily on the command line. The native executables are available in the releases section see here: https://github.com/Hakky54/certificate-ripper/releases
See here for the github repo: GitHub - Certificate Ripper
Hello everyone, today I have released version 2 of Certificate Ripper which includes the following new features:
-
Challenging Java Hobby Projects
I also have another project which might be intresting, it is called Certificate Ripper It covers the following topics:
-
is anyone using graal/spring native in production?
I build and published Certificate Ripper using GraalVM and the resulting native executable is amazing fast compared to a fat jar
-
Certificate Ripper released - tool to extract server certificates
Although this app is written in java it does not require java to run it. Native binaries for windows, linux and Mac are present in the release section here: https://github.com/Hakky54/certificate-ripper/releases
graalvm-reachability-metadata
-
GraalVM for JDK 21 is here
gcj had a lot of problems beyond needing configuration of reflection metadata. It used a full reimplementation of the standard library, and it was never adopted by the wider Java community being largely just Red Hat's strategy for creating a fully open source Java implementation rather than something offering specific benefits to Java developers. In particular people thought it'd lead to faster code, but GCC was never designed for Java and the results were actually a fair bit slower iirc.
Native image is quite different. With this new release the compiled images can not only be faster than JIT compiled Java (wow) but also use way less memory and start instantly. At a stroke this is resolving one of the biggest complaints people have always had against JVM languages.
And as a consequence you're seeing adoption by the wider community. All the modern Java web frameworks support it now, and there's a metadata repository where it's collected for projects that haven't accepted it upstream yet [1].
[1] https://github.com/oracle/graalvm-reachability-metadata
-
Are there any poplar alternatives to siesta?
Yeah, I was able to get it working by adding some custom runtime hints. jOOQ support was recently added to the graalvm-reachability-metadata repo via this issue, so that may make things easier
-
Spring Boot 3 meets Graal Native Image
During native image generation, native-image tool does a static analysis. There are classes which might not get accessed during this static analysis and they get left out in the final artifact. To overcome this some extra information can be provided during build time. Creating this extra metadata is cumbersome. There's an effort to consolidate these metadata information for various 3rd party libraries into a shared github repo https://github.com/oracle/graalvm-reachability-metadata .
-
Oracle Contributing GraalVM Community Edition Java Code to OpenJDK
GraalVM is truly great stuff.
GraalVM native compilation helps Java in the data center to avoid being a cost sink and to reduce start-up latency. Oracle needs Java to sell enterprise software.
Oracle contributing to OpenJDK may be required for Amazon cooperation (since Amazon is pushing its own JDK build) and probably helps the library ecosystem work towards native compatibility.
Native support for reflection (used in many libraries) requires "reachability metadata), maps of reflective API usage, at build time. Anyone can do it, but enterprise requires authoritative sources. Until authoritative reachability metadata covers the transitive graph of library+version dependencies in enterprise software, GraalVM builds are a PITA.
- https://github.com/oracle/graalvm-reachability-metadata
- latest release: https://medium.com/graalvm/graalvm-22-3-is-here-jdk-19-build...
- graalvm "community" roadmap: https://github.com/orgs/oracle/projects/6
(As a side note: Mark Reinhold has run the JDK team since 1997: is there any comparable example of such stellar leadership for broadly-adopted software across multiple technical and organizational eras?)
-
GraalVM 22.3: JDK 19 builds, jlink support, new monitoring features, and more
Also, reflection is supported in AOT mode. The analysis, however, does require reachability metadata in some cases. In the best case, libraries provide and maintain appropriate configuration for this. Reachability metadata can also be shared via https://github.com/oracle/graalvm-reachability-metadata.
-
is anyone using graal/spring native in production?
Most JVM libraries will require some amount of reflection for all frameworks as well, and for that we have made the bet to invest on a JVM wide effort -> https://github.com/oracle/graalvm-reachability-metadata.
-
Current State of Spring Boot Native with Kotlin (GraalVM)
The first issue should be solvable by refining Kotlin hints in https://github.com/oracle/graalvm-reachability-metadata that is used for non Spring hints with Boot 3.
What are some alternatives?
certigo - A utility to examine and validate certificates in a variety of formats
Spring - Spring Framework
setup-graalvm - GitHub Action for setting up GraalVM distributions.
picocli - Picocli is a modern framework for building powerful, user-friendly, GraalVM-enabled command line apps with ease. It supports colors, autocompletion, subcommands, and more. In 1 source file so apps can include as source & avoid adding a dependency. Written in Java, usable from Groovy, Kotlin, Scala, etc.
mutual-tls-ssl - 🔐 Tutorial of setting up Security for your API with one way authentication with TLS/SSL and mutual authentication for a java based web server and a client with both Spring Boot. Different clients are provided such as Apache HttpClient, OkHttp, Spring RestTemplate, Spring WebFlux WebClient Jetty and Netty, the old and the new JDK HttpClient, the old and the new Jersey Client, Google HttpClient, Unirest, Retrofit, Feign, Methanol, vertx, Scala client Finagle, Featherbed, Dispatch Reboot, AsyncHttpClient, Sttp, Akka, Requests Scala, Http4s Blaze, Kotlin client Fuel, http4k, Kohttp and ktor. Also other server examples are available such as jersey with grizzly. Also gRPC, WebSocket and ElasticSearch examples are included
daobab-100plus-examples - Daobab examples in Java
WeIdentity - 基于区块链的符合W3C DID和Verifiable Credential规范的分布式身份解决方案
jOOQ - jOOQ is the best way to write SQL in Java
GraalVMREPL - REPL (read–eval–print loop) shell built on top of JavaFX and GraalVM stack, incorporating GraalJS, GraalPython, TruffleRuby and FastR
coffee4j-back-end - The back-end of an application for tracking your coffee brews
gluonfx-maven-plugin - Plugin that simplifies creating native images for Java/JavaFX maven projects
httpserver